窗QUOT;桌面" [英] Window "on desktop"

查看:113
本文介绍了窗QUOT;桌面"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在使用 Rainlendar 了一段时间,我发现它有一个选项,把窗口在桌面上。这就像一个最底部窗口(作为对最上面)。

I've been using Rainlendar for some time and I noticed that it has an option to put the window "on desktop". It's like a bottomMost window (as against topmost).

我怎么能这样对一个WPF应用程序?

How could I do this on a WPF app?

感谢

推荐答案

我的回答是在Win32 API的条款,而不是具体到WPF(可能需要的P / Invoke从C#):

My answer is in terms of the Win32 API, not specific to WPF (and probably requiring P/Invoke from C#):

Rainlendar有两个选项:

Rainlendar has two options:


  • 在桌面,它成为浏览器桌面窗口(程序管理器)的子项。你可以用的setparent API实现这个目标。

  • 在底层是你的描述 - 窗户停留在Z顺序的底部,只是在桌面的前面。这是很容易把他们那里开始(见 SetWindowPos ) - 关键是要停止点击时他们来到前台。我建议办理 WM_WINDOWPOSCHANGING 消息。

  • "On Desktop", it becomes a child of the Explorer desktop window ("Program Manager"). You could achieve this with the SetParent API.
  • "On Bottom" is what you describe - its windows stay at the bottom of the Z-order, just in front of the desktop. It's easy enough to put them there to begin with (see SetWindowPos) - the trick is to stop them coming to the front when clicked. I would suggest handling the WM_WINDOWPOSCHANGING message.

这篇关于窗QUOT;桌面"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆