如何阻止窗口被“显示桌面”或WINDOWS+D命令隐藏?

wang1st 2011-02-22 05:44:44
我有窗口,是对话框的,我不想让它在最顶层显示,其实我是想让它在最底层显示,当用户使用“显示桌面”或者用WINDOWS+D组合命令的时候,就能看见它运行了。我是想做一个在后台实时显示天气的程序,好像直接画在壁纸上一样的,所以就需要这样的功能。但是目前我想要做到在最底层显示,又不被“显示桌面”或WINDOWS+D命令执行的时候隐藏掉,该怎么办呢?
...全文
911 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-03-19
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
Torch009 2011-03-01
  • 打赏
  • 举报
回复
程序里屏蔽win + D不行吗?
wang1st 2011-03-01
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 bffeey 的回复:]
win +d时 你看一下 窗口会收到什么消息
再次做个处理好了
[/Quote]

收不到什么消息
辰岡墨竹 2011-03-01
  • 打赏
  • 举报
回复
Win+D的过程就是将其他窗口最小化,然后把桌面窗口提到Z顺序顶层,如果你的窗口还在最底层的话,根本显示不出来。
你可以用这个
http://topic.csdn.net/u/20081007/23/4c84494d-6caa-4eb2-a2c4-2f73c67e8a63.html
通过检查指定桌面区域是否被遮挡来试试。
bffeey 2011-02-26
  • 打赏
  • 举报
回复
win +d时 你看一下 窗口会收到什么消息
再次做个处理好了
wang1st 2011-02-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 bokutake 的回复:] Win D显示桌面时,HWND_TOPMOST风格的窗口还是会在最上面的。 [/Quote] 这个我知道。但是我的窗口需要在最底层显示。而不是topmost
wang1st 2011-02-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 bokutake 的回复:]

Win+D显示桌面时,HWND_TOPMOST风格的窗口还是会在最上面的。
[/Quote]

这个我知道。但是我的窗口需要在最底层显示。而不是topmost
辰岡墨竹 2011-02-24
  • 打赏
  • 举报
回复
Win+D显示桌面时,HWND_TOPMOST风格的窗口还是会在最上面的。
辰岡墨竹 2011-02-24
  • 打赏
  • 举报
回复
::SetWindowPos(GetSafeHwnd(), HWND_TOPMOST, 0, 0, 0, 0,SWP_SHOWWINDOW | SWP_NOSIZE | SWP_NOMOVE);
wang1st 2011-02-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 oyljerry 的回复:]
做成悬浮窗格式... 以桌面为父窗口...
[/Quote]

我试过以桌面为父窗口,的确能够实现,但是貌似其中的控件自动透明起来,看起来很怪异。
另外我用了一下spy++看了迅雷和360的流量浮窗,它们好像并不是以桌面为父窗口的。
wang1st 2011-02-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 tandyt 的回复:]
引用 1 楼 oyljerry 的回复:
做成悬浮窗格式... 以桌面为父窗口...


可以,就像 迅雷或者快车的那个悬浮窗一样。
[/Quote]

具体怎么实现呢?
TandyT 2011-02-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 oyljerry 的回复:]
做成悬浮窗格式... 以桌面为父窗口...
[/Quote]

可以,就像 迅雷或者快车的那个悬浮窗一样。
haogeai123 2011-02-22
  • 打赏
  • 举报
回复
用钩子实现试试
fishion 2011-02-22
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20060113/16/4515373.html
参考下这里?
或者你就直接在桌面DC里绘图显示,先用WindowFromPoint取几个点大概判断要绘制图片的那个位置的点的窗口是什么,如果是桌面就绘制,如果不是就不绘制
oyljerry 2011-02-22
  • 打赏
  • 举报
回复
做成悬浮窗格式... 以桌面为父窗口...
我将带领大家来系统学习Windows窗口编程,包括消息、窗口、GDI绘图、游戏开发等。本课程比较基础,非常适合初学者入门,读者可以边学习边实践。具体的章节目录和课程内容如下所示:---------------------------------------------Windows游戏编程系列之1:GUI界面编程及游戏入门实战1、Windows创建第一个窗口 WinMain入口函数 5进行Windows编程的调试手法 6窗口从哪里来? 7窗口编程的步骤 7窗口编程需要的主要结构 8窗口编程需要的主要API 92、Windows窗口过程与消息机制 如何留住窗口? 121)Windows的消息与消息循环 142)消息处理函数与常用消息 17)Windows窗口过程函数 19 3、GDI编程之设备上下文 1)GDI的通用编程框架 222)GDI的绘图步骤 253)GDI获取设备句柄 254、GDI编程之绘制几何图形 画点、线 28颜色COLORREF 29矩形 29画圆、饼图、弦图 305、GDI编程之自定义画笔画刷画笔简介 32画刷简介 33画笔案例 33画刷案例 346、GDI编程之绘制文字 DrawText函数 35TextOut 函数 (wingdi.h) 36CreateFont函数 37绘制文本案例 377、GDI编程之绘制位图 位图简介 381)在资源中添加位图资源 392)从资源中加载位图: LoadBitmap 393)创建一个与当前DC相匹配的DC(内存DC) 394)将bitmap放入匹配的DC中:SelectObject 405)成像(1:1 比例 ) 406)取出位图 407)释放位图 418)释放匹配的DC 41绘制位图案例 41   8、Windows鼠标键盘消息 一、键盘消息 421、键盘消息 422、消息参数: 423、消息的使用: 424、键盘消息的案例代码 43二、鼠标消息 441、基本鼠标消息 442、双击消息 443、滚轮消息 454、不响应双击消息 45 9、Windows定时器消息 定时器消息介绍 47创建定时器 47关闭定时器 47定时器消息案例代码 4810、GDI游戏之跳舞动画 11、GDI游戏之走路动画 12、GDI贪吃蛇游戏实战  

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧