调用函数时如何在其他窗口上打开一个窗口?
import wx
def openFile(wildcard="*"):
app = wx.App(None)
style = wx.FD_OPEN | wx.FD_FILE_MUST_EXIST
dialog = wx.FileDialog(None, 'Open', wildcard=wildcard, style=style)
if dialog.ShowModal() == wx.ID_OK:
path = dialog.GetPath()
else:
dialog.Destroy()
path = 'No file'
return f'<div class="notification error">{path}</div>'
dialog.Destroy()
return f'<div id="pathToFile" class="notification">{path}</div>'
2条答案
按热度按时间vuktfyat1#
来自@VZ的Accepted回答对于所有正常使用来说都是正确的,但严格地说,您的代码可以进行调整以使其工作,即使它没有真正的用途,但您会注意到,尽管传递了
wx.STAY_ON_TOP
,但它不会执行它。就像这样:
9gm1akwq2#
要在其他顶层窗口上显示对话框,您需要将该窗口指定为对话框父窗口(而不是像您那样使用
None
)。不支持在所有窗口顶部显示本地对话框,如“打开文件”对话框,这只能通过使用
wx.STAY_ON_TOP
标志对自定义窗口进行。