2016-12-07 10 views
0

私は現在電卓で作業しています。私は最も重要なこと以外のもの、計算を除いてほとんどのことをやっています。私はちょうどそのようなコードで私の問題を解決することが可能かどうか、もしそうなら、どのように知りたいのですか?私はできること全てを試みたが、何も動いていない。私は本当に答えを感謝します。Python Gtkで計算を行うにはどうすればよいですか?

これは私のコードの一部です:

私のコードが長いので、私はちょうどbutton16をコピーしました。

button16 = Gtk.Button(label="C") 
    button16.connect("clicked", self.button16_clicked) 
    vbox.pack_start(button16, True, True, 0) 
    vbox.pack_end(button16, True, True, 0) 
    self.add(button16) 



    self.first_num = 0 
    self.second_num = 0 
    self.result = 0 
    self.operation = "" 




def button1_clicked(self, widget): 
    self.entry.set_text(self.entry.get_text() + str(1)) 

def button2_clicked(self, widget): 
    self.entry.set_text(self.entry.get_text() + str(2)) 

def button3_clicked(self, widget): 
    self.entry.set_text(self.entry.get_text() + str(3)) 

def button4_clicked(self, widget): 
    self.entry.set_text(self.entry.get_text() + str(4)) 

def button5_clicked(self, widget): 
    self.entry.set_text(self.entry.get_text() + str(5)) 

def button6_clicked(self, widget): 
    self.entry.set_text(self.entry.get_text() + str(6)) 

def button7_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str(7)) 

def button8_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str(8)) 

def button9_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str(9)) 

def button10_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str(0)) 

def button11_clicked(self,button11): 
    self.entry.set_text(self.entry.get_text() + str("+")) 

def button12_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str("-")) 

def button13_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str("*")) 

def button14_clicked(self,widget): 
    self.entry.set_text(self.entry.get_text() + str("/")) 

def button15_clicked(self, button15): 
    self.entry.set_text(self.entry.get_text() + str("=")) 

def button16_clicked(self,button16): 
    self.entry.set_text("") 

答えて

0

「Gtkで計算している」という意味は何ですか?おそらく、イベント処理で引数を渡すだけでよいでしょう。このカンマの後に "button16.connect(" クリック "self.button16_clicked)" では

:それから( "クリック"、button15_clicked、ARG1、ARG2)

とデフbutton15_clicked(自己、button15、ARG1、ARG2 ):(...)mynumber = arg1 + arg2。 どこに入力した番号を保存する場合。 (たとえば、a = a + str(1)のようなbutton1行を追加し、 "+、 - 、*、/"ボタンでaを残してbを取ってからaとbを "="に渡す)

もしそうでなければ、button15_clickedで最後の文字列を取り、+ - * /()の間でministringsに分割し、結果を得るために数学を行い、内側からself.show_result(結果)を実行する必要がありますbutton15_clicked

+0

あなたの答えはありがたいですが、私が前に宣言した変数(first_numとsecond_num)のarg1とarg2はありますか? –

+0

はい、私は例を追加しました。 : "return a、b"を使用する – mpruchni

+0

またはもちろんself.a – mpruchni

関連する問題