wxpython中弹出临时窗口的pos参数

2024-09-28 22:32:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试自定义弹出窗口,并做了以下事情。在

class MyDialog(wx.PopupTransientWindow):

    def __init__(self, parent, title, cellnum, cmd, **kwargs): 
        super(MyDialog, self).__init__(parent, style=wx.CLIP_CHILDREN | wx.FRAME_NO_TASKBAR |wx.FRAME_SHAPED, **kwargs)
        # def __init__(self, parent, style, cellnum, cmd):
        # super(MyDialog, self).__init__(parent, style=wx.CLIP_CHILDREN | wx.FRAME_NO_TASKBAR | wx.NO_BORDER|wx.FRAME_SHAPED)

        # self.panel = wx.Panel(self)
        #size=(255,200)#one kind of size
        self.panel = Panel1(self)

但当我打电话给他时:

^{2}$

显示以下错误:

Traceback (most recent call last):
  File "D:\X000T9P77\projects\MYTEST\docs\MYTEST_gui_module_src\MYTESTGUI.py", line 1465, in ShowMessage1
    dial = MyDialog(self, "CELL "+id, id, cmd, pos=ldPos)
  File "D:\X000T9P77\projects\MYTEST\docs\MYTEST_gui_module_src\MYTESTGUI.py", line 103, in __init__
    super(MyDialog, self).__init__(parent, style=wx.CLIP_CHILDREN | wx.FRAME_NO_TASKBAR |wx.FRAME_SHAPED, **kwargs)
  File "C:\Python27\lib\site-packages\wx-3.0-msw\wx\_windows.py", line 2141, in __init__
    _windows_.PopupTransientWindow_swiginit(self,_windows_.new_PopupTransientWindow(*args, **kwargs))
TypeError: new_PopupTransientWindow() takes at most 2 arguments (3 given)

有人能帮我吗。 事先非常感谢。在


Tags: noselfcmdclipinitstyleframekwargs
2条回答

PopupTransientWindow只接受2个参数parent和flags,您的代码正在传递这2个参数,并且它还试图传递pos参数。在

排队

super(MyDialog, self).__init__(parent, style=wx.CLIP_CHILDREN | wx.FRAME_NO_TASKBAR |wx.FRAME_SHAPED, **kwargs)

**kwargs正在传递pos=ldPos

由于PopupTransientWindow()最多接受2个参数,我建议您将其更改为:

super(MyDialog, self).__init__(parent, style=wx.CLIP_CHILDREN | wx.FRAME_NO_TASKBAR |wx.FRAME_SHAPED) #, **kwargs)

要设置临时窗口的位置,可以使用Position

^{pr2}$

相关问题 更多 >