0

私は本の中でこのコードを見て、継承に関するいくつかの質問を引き起こしました。

txt.py

class LoginPanel(wx.Panel):
    def __init__(self,parent)
        super(LoginPanel,self).__init__(parent)

        self._username = wx.TextCtrl(self)
        self._password = wx.TextCtrl(self,style=wx.TE_PASSWORD)

        sizer          = wx.FlexGridSizer(2,2,8,8)

        sizer.Add(wx.StaticText(self,label="Username:"),
                0,wx.ALIGN_CENTER_VERTICAL)
        sizer.Add(self._username,0,wx.EXPAND)
        sizer.Add(wx.StaticText(self,label="Password"),
                0,wx.ALIGN_CENTER_VERTICAL)
        sizer.Add(self._password,0,wx.EXPAND)

        msizer          = wx.BoxSizer(wx.VERTICAL)
        msizer.Add(sizer,1,wx.EXPAND|wx.ALL,20)
        btnszr          = wx.StdDialogButtonSizer()
        button          = wx.Button(self, wx.ID_OK)
        button.SetDefault()
        btnszr.AddButton(button)
        msizer.Add(btnszr,0,wx.ALIGN_CENTER|wx.ALL,12)
        btnszr.Realize()

        self.SetSizer(msizer)

Windowオブジェクトの一部であるSetSizerメソッドを直接使用するにはどうすればよいですか?それは、参照なしで親メソッドをどのように使用するのですか?

4

1 に答える 1

1

クラスから継承するときはいつでも、そのクラスのメソッドを取得します。wx.Panelをインポートしてこれを行う場合:

dir(wx.Panel)

たくさんのメソッドとプロパティを取得できます。サブクラスに対して同じことを行った場合、同じリストに加えて、サブクラスで作成したメソッドとプロパティがすべて取得されます。はい、「self.SomeMethod」を使用して、親クラスからメソッドにアクセスし、自分で作成したメソッドにアクセスする必要があります。

于 2012-08-28T19:16:00.867 に答える