有什么办法能让我的窗口始终处于窗口最上端,而与其它窗口或者其他应用程序使用的窗口是否设置Topmost风格无关。
希望能够获得好的建议,谢谢大家!
16 个解决方案
#1
试一下将所有窗体固定位置:
this.Location = new Point(0,y);
this.Location = new Point(0,y);
#2
To ChengKing:
这样做有什么帮助么?我说的是Z-Order的最上端。
这样做有什么帮助么?我说的是Z-Order的最上端。
#3
在2000以上操作系统好像做了设置,不可能永远占有TOP的吧,可能出路在其他窗口MOSTTOP后,你的窗口再MOSTTOP一下..
#4
这个应该是最不到DI
据说98/ME下可以hack gui内核搞定,直接修改z order,2K/XP能做这个的可能性非常小
据说98/ME下可以hack gui内核搞定,直接修改z order,2K/XP能做这个的可能性非常小
#5
一个笨方法,用定时器,定时调用SetWindowPos函数,把窗体设为最顶端。
#6
肯定是做得到的,要不那些播放器的始终在最前面功能是怎么做的阿??不过不知道怎么做,关注ing
#7
播放器没有吧? 看qq,msn等什么的上线通知,还不是在播放器上面
#8
站个位置,关注一下
#9
嗯,有道理,我玩游戏的时候,即使是全屏,还是会有上线提示的
#10
oyljerry兄说的没错,差不多就是这样的效果,只是我希望这个窗口始终处于最顶端,除非我把它销毁。
#11
关注。
以前我是用定时器。
以前我是用定时器。
#12
定时器吧,不断BringWindowToTop
#13
逻辑上就有问题,自相矛盾了,以你的矛戳你的盾,会怎样呢?
假设真的有始终最顶窗口,你有两个这样的窗口,这两个哪个优先?
如果你只是要比普通Topmost的窗口优先级高,那只有去找M$去解决了,至少目前没有这种逻辑
假设真的有始终最顶窗口,你有两个这样的窗口,这两个哪个优先?
如果你只是要比普通Topmost的窗口优先级高,那只有去找M$去解决了,至少目前没有这种逻辑
#14
location
#15
关注~~
#16
To viena(维也纳nn-实心木头人)
如果有两个这样的窗口,自然可以通过自己的程序逻辑去解决。
我也举一个比较常见的例子,WINAMP大家都用过的,我装的是2.9,当设置成为TOPMOST之后,WINAMP的窗口就是最顶层窗口了,但是大家都知道,WINAMP的播放器是由3-4个窗口组成的,每一个窗口都是独立的,当设置成为TOPMOST之后,所有的窗口是最顶端的。看看窗口风格每一个窗口都有WS_EX_TOPMOST的,当然可能还有一些其它的机制处理,我想和大家讨论的,也正是用什么具体的方法去实现。
如果有两个这样的窗口,自然可以通过自己的程序逻辑去解决。
我也举一个比较常见的例子,WINAMP大家都用过的,我装的是2.9,当设置成为TOPMOST之后,WINAMP的窗口就是最顶层窗口了,但是大家都知道,WINAMP的播放器是由3-4个窗口组成的,每一个窗口都是独立的,当设置成为TOPMOST之后,所有的窗口是最顶端的。看看窗口风格每一个窗口都有WS_EX_TOPMOST的,当然可能还有一些其它的机制处理,我想和大家讨论的,也正是用什么具体的方法去实现。
#1
试一下将所有窗体固定位置:
this.Location = new Point(0,y);
this.Location = new Point(0,y);
#2
To ChengKing:
这样做有什么帮助么?我说的是Z-Order的最上端。
这样做有什么帮助么?我说的是Z-Order的最上端。
#3
在2000以上操作系统好像做了设置,不可能永远占有TOP的吧,可能出路在其他窗口MOSTTOP后,你的窗口再MOSTTOP一下..
#4
这个应该是最不到DI
据说98/ME下可以hack gui内核搞定,直接修改z order,2K/XP能做这个的可能性非常小
据说98/ME下可以hack gui内核搞定,直接修改z order,2K/XP能做这个的可能性非常小
#5
一个笨方法,用定时器,定时调用SetWindowPos函数,把窗体设为最顶端。
#6
肯定是做得到的,要不那些播放器的始终在最前面功能是怎么做的阿??不过不知道怎么做,关注ing
#7
播放器没有吧? 看qq,msn等什么的上线通知,还不是在播放器上面
#8
站个位置,关注一下
#9
嗯,有道理,我玩游戏的时候,即使是全屏,还是会有上线提示的
#10
oyljerry兄说的没错,差不多就是这样的效果,只是我希望这个窗口始终处于最顶端,除非我把它销毁。
#11
关注。
以前我是用定时器。
以前我是用定时器。
#12
定时器吧,不断BringWindowToTop
#13
逻辑上就有问题,自相矛盾了,以你的矛戳你的盾,会怎样呢?
假设真的有始终最顶窗口,你有两个这样的窗口,这两个哪个优先?
如果你只是要比普通Topmost的窗口优先级高,那只有去找M$去解决了,至少目前没有这种逻辑
假设真的有始终最顶窗口,你有两个这样的窗口,这两个哪个优先?
如果你只是要比普通Topmost的窗口优先级高,那只有去找M$去解决了,至少目前没有这种逻辑
#14
location
#15
关注~~
#16
To viena(维也纳nn-实心木头人)
如果有两个这样的窗口,自然可以通过自己的程序逻辑去解决。
我也举一个比较常见的例子,WINAMP大家都用过的,我装的是2.9,当设置成为TOPMOST之后,WINAMP的窗口就是最顶层窗口了,但是大家都知道,WINAMP的播放器是由3-4个窗口组成的,每一个窗口都是独立的,当设置成为TOPMOST之后,所有的窗口是最顶端的。看看窗口风格每一个窗口都有WS_EX_TOPMOST的,当然可能还有一些其它的机制处理,我想和大家讨论的,也正是用什么具体的方法去实现。
如果有两个这样的窗口,自然可以通过自己的程序逻辑去解决。
我也举一个比较常见的例子,WINAMP大家都用过的,我装的是2.9,当设置成为TOPMOST之后,WINAMP的窗口就是最顶层窗口了,但是大家都知道,WINAMP的播放器是由3-4个窗口组成的,每一个窗口都是独立的,当设置成为TOPMOST之后,所有的窗口是最顶端的。看看窗口风格每一个窗口都有WS_EX_TOPMOST的,当然可能还有一些其它的机制处理,我想和大家讨论的,也正是用什么具体的方法去实现。