VC中如何设置窗口在最前。
VC中如何创建一个窗口永远最前,只到被关闭,就象Windows的资源管理器一样。 问题点数:100、回复次数:27Top
1 楼snowbirdfly(专心搞好嵌入式~~~)回复于 2006-08-06 20:59:01 得分 20
你设置窗体风格为WS_EX_TOPMOST就可以了~~~Top
2 楼seu07201213(【_】〖汪洋中的一片叶子〗≈^︵^≈)回复于 2006-08-06 20:59:02 得分 20
m_dlg.SetWindowPos(&wndTopMost, 0, 0, 600, 400, SWP_SHOWWINDOW);Top
3 楼seu07201213(【_】〖汪洋中的一片叶子〗≈^︵^≈)回复于 2006-08-06 21:00:07 得分 0
SetWindowPos(&wndTopMost , 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE);Top
4 楼SoLike(思危)回复于 2006-08-06 21:00:44 得分 10
来晚了,都被楼上说光了。
不过貌似资源管理器,不是永远在前啊。Top
5 楼snowbirdfly(专心搞好嵌入式~~~)回复于 2006-08-06 21:01:28 得分 10
或者是
SetWindowPos(&CWnd::wndTopMost,0,0,0,0,
SWP_NOMOVE|SWP_NOSIZE);
这样就可以了~~~Top
6 楼xqk(夏乾坤)回复于 2006-08-06 21:04:43 得分 10
m_dlg.SetWindowPos(&wndTopMost, 0, 0, 600, 400, SWP_SHOWWINDOW);
Top
7 楼PDD123(没人指导好辛苦)回复于 2006-08-06 21:19:36 得分 10
dlg.SetWindowPos(&(dlg.wndTopMost), 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE|SWP_SHOWWINDOW);//让这个窗口显示在最前面
其中dlg为窗口对象。Top
8 楼believefym(feng)回复于 2006-08-06 21:19:39 得分 10
两个WS_EX_TOPMOST的窗口会怎么样Top
9 楼edwal(无知无情)回复于 2006-08-06 21:55:05 得分 0
哈哈 全是牛人呀
大家 说得 都对
Top
10 楼Stefine(CSDN最菜滴猩猩)回复于 2006-08-06 21:58:12 得分 0
两个WS_EX_TOPMOST的窗口会怎么样
是说设置一次以后再设置一次吗?
这样有必要吗?Top
11 楼believefym(feng)回复于 2006-08-06 22:08:05 得分 0
两个WS_EX_TOPMOST的窗口会怎么样
是说设置一次以后再设置一次吗?
这样有必要吗?
----------------
是两个窗口,不是一个窗口设置两次Top
12 楼cauthyxjs()回复于 2006-08-06 22:42:54 得分 0
来晚了,不过楼上说的是产生两个窗口的意思吗?Top
13 楼czcolin()回复于 2006-08-06 22:47:06 得分 0
还是像楼上的两大侠一样用那句台词:哎~俺来晚了。。
SoLike(思危)
不过貌似资源管理器,不是永远在前啊。
----
应该是他说错了,他要说的可能是“任务管理器”taskmgr.exe
Top
14 楼czcolin()回复于 2006-08-06 22:58:43 得分 0
这API要7个参数,第一个参数应句柄对才:
SetWindowPos(headle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE)Top
15 楼ColdMooon(天上有个太阳)(水中有个月亮)回复于 2006-08-07 00:55:21 得分 0
方法被别人说了...
但是,滥用顶层窗口会让用户讨厌的.楼住要慎重啊.Top
16 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-08-07 01:15:41 得分 10
全屏打游戏的时候QQ窗口还在最前,烦死了Top
17 楼hhyytt(鹦鹉螺)回复于 2006-08-07 08:02:53 得分 0
设置扩展属性WS_EX_TOPMOST
或者SetWindowPos(headle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE)
Top
18 楼seu07201213(【_】〖汪洋中的一片叶子〗≈^︵^≈)回复于 2006-08-07 08:52:43 得分 0
jiangsheng..........^-^...............Top
19 楼tdtdtdtdtd123(飘)回复于 2006-08-07 09:01:59 得分 0
全屏打游戏的时候QQ窗口还在最前,烦死了
Top
20 楼Featured(我握着爱情的门票静静排队……)回复于 2006-08-07 11:05:08 得分 0
全屏打游戏的时候QQ窗口还在最前,烦死了Top
21 楼diablodai()回复于 2006-08-07 12:00:43 得分 0
?Top
22 楼wubaowang(Knowledge is power)回复于 2006-08-07 12:42:12 得分 0
接分...Top
23 楼JessC(人类一思考,上帝就发笑.)回复于 2006-08-07 13:15:23 得分 0
...烦死了Top
24 楼robin_yao()回复于 2006-08-07 13:52:15 得分 0
jiangsheng也打游戏啊。。。Top
25 楼zhujiujun(<<<<<<<<动感光波>>>>>>>>)回复于 2006-08-07 14:08:12 得分 0
哈哈,我VB程序里面刚好有用,将就着用吧.vc也是SetWindowPos
Const HWND_TOPMOST = -1
Private Sub AlwaysOnTop(blFlag As Boolean)
If blFlag = True Then
SetWindowPos MainFrm.hWnd, HWND_TOPMOST, 0, 0, 0, 0, wFlags
Else
SetWindowPos MainFrm.hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, wFlags
End If
m_blTopMost = Not (m_blTopMost)
End SubTop
26 楼www9158com(www.9158.com)回复于 2006-08-07 14:37:45 得分 0
SetWindowPosTop
27 楼Nowish(看我能忍耐多久)回复于 2006-08-07 16:29:52 得分 0
mark~Top




