Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/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
Wxpython 保持窗户始终在底部_Wxpython - Fatal编程技术网

Wxpython 保持窗户始终在底部

Wxpython 保持窗户始终在底部,wxpython,Wxpython,我今天开始研究wxPython,我想知道是否有一种替代wx的方法。我要找的是一扇永远在底部的窗户。不幸的是,没有wx。请停留在底部窗口样式 基本上,我希望其他窗口(我不拥有)始终位于我的顶部,即使它有焦点。(想想桌面上的小部件) 我尝试在该windows焦点上使用Lower(),但没有效果 有什么建议吗?根据,我希望您绑定到的wx.EVT\u SET\u FOCUS和wx.EVT\u KILL\u FOCUS事件不会在包含本身接受FOCUS的小部件的面板或框架上触发 建议使用帧上的wx.EVT\

我今天开始研究wxPython,我想知道是否有一种替代wx的方法。我要找的是一扇永远在底部的窗户。不幸的是,没有
wx。请停留在底部
窗口样式

基本上,我希望其他窗口(我不拥有)始终位于我的顶部,即使它有焦点。(想想桌面上的小部件)

我尝试在该windows焦点上使用
Lower()
,但没有效果

有什么建议吗?

根据,我希望您绑定到的
wx.EVT\u SET\u FOCUS
wx.EVT\u KILL\u FOCUS
事件不会在包含本身接受FOCUS的小部件的面板或框架上触发

建议使用帧上的
wx.EVT\u ACTIVATE
事件捕捉窗口被置于前台或发送到后台的时间。使用
事件
对象可以确定窗口当前是否为前景窗口

以下内容将生成一个空框架,该框架将位于所有其他窗口的后面:

import wx


class MyFrame(wx.Frame):
    def __init__(self, *args, **kwargs):
        super(MyFrame, self).__init__(*args, **kwargs)
        self.Bind(wx.EVT_ACTIVATE, self.on_focus)

    def on_focus(self, evt):
        self.Lower()


if __name__ == '__main__':
    app = wx.App(False)
    main_window = MyFrame(None)
    main_window.Show()
    app.MainLoop()

但是,当单击窗口的标题栏或在窗口以这种方式获得焦点后单击窗口内的任何内容时,
wx.EVT\u ACTIVATE
事件似乎不会触发。因此,如果您单击标题栏(而不是单击并拖动),您可以使窗口位于顶部并保持这种状态,直到窗口失去焦点。这不完全符合您的要求,但我认为这更多的是一个功能,而不是一个bug。

很抱歉回复太晚,但这正是我要搜索的内容。我没有头衔,所以没关系。