2011-12-21 5 views
0

を使用して、私のパネルで印刷するには、静的なテキストは、私が何をしようとしている私のコードなぜ私はここでwxPythonを

import wx 

class justin(wx.Frame): 


    def __init__(self,parent,id): 

     wx.Frame.__init__(self,parent,id,'frame', size=(800, 500)) 
     panel=wx.Panel(self) 
     panel.SetBackgroundColour("red") 
     self.box1=wx.TextCtrl(panel, -1, "type number") 
     self.box2=wx.TextCtrl(panel, -1, "type number") 
     self.box1.SetBackgroundColour("gray") 
     self.box2.SetBackgroundColour("gray") 

     siz=wx.BoxSizer(wx.VERTICAL) 
     siz.Add(self.box1, 1) 
     siz.Add(self.box2, 1) 
     panel.SetSizer(siz) 

     button=wx.Button(panel, label="enter", pos=(250, 200), size=(100, 50)) 
     self.Bind(wx.EVT_BUTTON, self.yesitstrue, button) 

    def yesitstrue(self, event): 
     a=(float(self.box1.GetValue())) 
     b=(float(self.box2.GetValue())) 
     answer = a+b 
     wx.StaticText(self.panel,id, answer, pos=(200, 100)) 



if __name__=='__main__': 
    app=wx.PySimpleApp() 
    frame=justin(parent=None, id=-1) 
    frame.Show() 
    app.MainLoop() 

で取得することはできませんが2つのテキストボックスからテキストを取得し、それを印刷し、それを追加していますGUI形式で表示されます。プログラムが静的テキストの部分に到達すると、パネルは存在しないと言います。 他のバグが見つかった場合は助けてください。本当に必要なので私に知らせてください。

答えて

0

あなたのコードを持ついくつかの問題があります。

  • panelpanelはあなたのコードでは、それはyesitstrue方法で利用できなくなりました__init__メソッド内の変数のため、エラーがある存在していないが、 。これを修正するには、メソッドのインスタンス属性としてself.panel = panelのように割り当てる必要があります。その後、yesitstrueの方法でself.panelを使用してアクセスすることができます。

  • id:タイプintnex_StaticText予想引数2は、第2引数、idは、予想されるタイプのものではないことを意味します。 idはPythonの組み込み関数であり、これが問題を引き起こしていることに注意してください。解決方法は、panelの場合と似ています。id引数をこのようなインスタンス属性として割り当てます。self.id = id。その後、idの代わりにself.idを使用してwx.StaticTextに電話してください。

  • answer:必須の文字列またはユニコードタイプは、実際にはテキストではないものを渡すことを意味します。コードでは、abfloatに変換され、答えはその合計です。したがって、それはまたfloatです。 、この問題を解決answertstrを使用して文字列に変換し、str(answer)

+0

を使用してwx.StaticTextを呼び出すには今、私はもうそのエラーが出るいけないが、私はTypeError例外を取得する:方法に「new_StaticText」タイプの、期待される引数2 I 'int型このエラーを見たことがないし、私に何をしたいのかわからない – user1108980

+0

編集された答えで説明されているいくつかの問題がいくつかありました。今回は、あなたが探している結果を得るべきです。 – jcollado

+0

私はjcolladoの最初の投稿を見ただけで、残りの部分はプログラムを使いこなすことで学んだ – user1108980

関連する問題