0

アプリケーションを開くと、2 番目のフレームを開くボタンが表示されます。そのため、2 番目のフレームに、その値がメイン フレームによって追加される List に基づいて情報を取得するように指示したいと考えています。
たとえば
、メインフレームではself.pubID、アクションを実行した後、そのリストに番号を追加します。2番目のフレームを開くよりも後ですが、追加した値を取得しません。つまり、そのリストから更新された情報を取得できません。ご協力ありがとうございます。私が提供したコードは見栄えが悪いことはわかっていますが、スクリプト全体が長くてアップロードすると混乱する可能性があるため、何かを示してくれることを願っています.

class MyFrame(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title)
        panel = wx.Panel(self, -1)

    def OnSelect(self, event):        
        item = event.GetSelection()
        del self.pubID[:]
        self.pubID.append(item)
    def onInsert(self, event):
            self.Lin = InLink("Insert")
            self.Lin.Show()
class InLink(wx.Frame):
    def __init__(self,title):
        wx.Frame.__init__(self, None, title=title, pos=(150,150), size=(200,200))    
        panel = wx.Panel(self)
4

1 に答える 1

1

私が正しく理解していれば、InLink中身を知る必要がありMyFrame.pubIDます。この問題には簡単な解決策があります。それをコンストラクターに渡します。だからあなたはこれにInLink.__init__()なります:

class InLink(wx.Frame):
    def __init__(self,title, pubID):
        #now you can easily get the value from pubID
        ...

ただし、それだけでなく、コードに問題があると思います。あなたがやりたいことをより詳細に説明するように求めるコメントを投稿しました。あなたの質問を読んで、それが使用する値を返したいと思います。これは正しいです?その場合、を使用する代わりに、を使用する必要があります。これは、 sに関する以前の SO 投稿です。その回答には、開始に役立つ他のチュートリアルへのリンクが含まれています。InLinkMyFramewx.Framewx.Dialogwx.Dialog

于 2013-02-25T02:53:36.667 に答える