0
Pythonでは特にEventGhostのwxpythonでいくつかの経験をしていますが、私はいくつかの一般的なクラスに問題があります。私は周りを見て、多くを試みたが、成功していない。Python呼び出し親クラス属性
私の問題は、私は私の「MyDialog()」クラス内のボタンから私のGUIを閉じたいということです。私は「クローズ」私のボタンから呼び出す場合
class ShowInputDialog(eg.ActionBase):
name = "Show Input Dialog"
description = "Show an input dialog that allows you to create an EventGhost event that you can then use to trigger AutoRemote messages or notifications"
def __call__(self):
class MyDialog():
def __init__(self):
########################Main Dialog###########################
no_sys_menu = wx.CLIP_CHILDREN | wx.STAY_ON_TOP | wx.FRAME_NO_TASKBAR | wx.NO_BORDER | wx.FRAME_SHAPED
self.Dialog = wx.Frame(None, wx.ID_ANY, "Hello World", style=no_sys_menu, size=(400,600))
########################Header###########################
Header = wx.Panel(self.Dialog, wx.ID_ANY, size=(400,600))
HeaderSizer = wx.GridSizer(rows=1, cols=2, hgap=5, vgap=5)
HeaderSizer.Add(wx.StaticText(Header, label="Hello World"), flag=wx.ALIGN_CENTER_VERTICAL)
button = wx.Button(Header, label='close')
button.Bind(wx.EVT_BUTTON, self.close)
HeaderSizer.Add(button, 0, wx.ALIGN_RIGHT, 0)
Header.SetSizer(HeaderSizer)
upDownSizer = wx.BoxSizer(wx.VERTICAL)
upDownSizer.Add(Header, 0, flag=wx.EXPAND)
self.Dialog.SetSizer(upDownSizer)
self.Dialog.Fit()
self.Dialog.Show()
def close(self, event):
self.Close()
print "see you soon"
wx.CallAfter(MyDialog)
私は
AttributeError: MyDialog instance has no attribute 'Close'
を取得
でも「閉じる」を呼び出す方法は?私は "MyDialog"の初期設定をスーパーに読みましたが、それを成功させることはできません。また、これが私の問題を解決するかどうかもわかりません。
おかげで、懸命のnoobに
Iのhabeのあなたの実際のインスタンスであるように思われる
self.Dialog
に近い呼び出すことが考えられます'ダイアログ' – fteinzあなたが持っているエラーはありません...あなたが実際のエラーメッセージを入力する必要がある場合は助けが必要な場合... –
私は家にいなかったため申し訳ありません。あなたが正しいことを申し訳ありません。私はあなたのようにテストした(私はそれを前に試してみたと思った)、今は思ったよりもうまくいっている。ありがとう – fteinz