Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows wxPython:将框架置于一切之上_Windows_User Interface_Wxpython_Z Order_Always On Top - Fatal编程技术网

Windows wxPython:将框架置于一切之上

Windows wxPython:将框架置于一切之上,windows,user-interface,wxpython,z-order,always-on-top,Windows,User Interface,Wxpython,Z Order,Always On Top,我希望我的框架总是在上面,但我希望它真的在上面。我不希望其他窗口隐藏它,即使它们也“始终在顶部”。我正在使用wx.STAY\u ON_TOP和wx.FRAME\u FLOAT\u ON_PARENT,但仍然有一些窗口出现在我的顶部。此外,任务栏显示在我的框架顶部,而我希望它位于我的框架后面 我试过很多没用的东西,很详细 知道如何使我的框架真正位于顶部吗?因为这样做没有标准的方法,因为这通常是一种不希望的效果,所以您可以通过频繁地再次设置最顶部的标志来“否决”任何其他将要位于最顶部的应用程序来实现

我希望我的框架总是在上面,但我希望它真的在上面。我不希望其他窗口隐藏它,即使它们也“始终在顶部”。我正在使用
wx.STAY\u ON_TOP
wx.FRAME\u FLOAT\u ON_PARENT
,但仍然有一些窗口出现在我的顶部。此外,任务栏显示在我的框架顶部,而我希望它位于我的框架后面

我试过很多没用的东西,很详细


知道如何使我的框架真正位于顶部吗?

因为这样做没有标准的方法,因为这通常是一种不希望的效果,所以您可以通过频繁地再次设置最顶部的标志来“否决”任何其他将要位于最顶部的应用程序来实现这一点。您可以使用一个每x ms设置一次值的计时器来完成此操作,也可以尝试仅在窗口失去焦点时再次设置ontop标志。设置ontop标志的事件有:

EVT_SET_FOCUS 
EVT_KILL_FOCUS 
尝试使用以下方法:

wx.Frame.SetFocus()

让它全屏,然后不允许最小化就足够了吗?您是只针对Windows,还是回答也需要在Gtk和Mac上工作?您希望用户能够访问任务栏吗?@PaulMcNett用户不需要访问任务栏。解决方案应仅限于Windows。全屏不是一个选项,因为有些时候帧不应该全屏。前进!现在,我的应用程序一直在与罗塞塔•斯通(Rosetta Stone)进行斗争,这显然是在做同样的事情,不断让自己处于领先地位。这场拔河的结果是整个屏幕闪烁,使整个计算机无法使用。我想解决办法可能是阻止罗塞塔·斯通这样做。有没有办法做到这一点?@RamRachum你可以试着不停地移除罗塞塔石碑的最上面的旗帜,但我不知道如何从Python中做到这一点,我知道如何从AutoIt中做到这一点:但正如你已经说过的,这将继续是一场拔河比赛,我不认为你真的可以让罗塞塔石碑被没收。太好了!我使用AHK制作了一个脚本,使活动应用程序不总是在顶部,我只是在Rosetta Stone上手动使用它,它可以工作。现在,我的应用程序位于Rosetta Stone之上。AHK脚本基本上是:
+^#a::WinSet,AlwaysOnTop,Off,a Return