2017-01-23 25 views
0

函數調用錯誤所以我whant使用此代碼來調用一次按鍵功能:的Python,Kivy,「Asse田:沒有不調用」關於按鈕

botao_ok.bind(on_press=f_adicionar_socios(txt_n_socio.text,txt_nome.text,txt_filho_de.text,txt_filho_e_de.text,txt_data_nas.text,txt_tipo_ID.text,txt_num_ID.text,txt_NIF.text,txt_morada_rua.text,txt_morada_localidade.text,txt_codigo_postal.text,txt_tel_fixo.text,txt_telemovel.text,txt_email.text,txt_tipo_socio.text,txt_data_admicao.text,txt_zona.text,txt_actividade.text,txt_actividade_de.text,txt_actividade_ate.text,txt_observacoes.text)) 

但要保持它的簡單,我只需要解決這個問題:

#My Function 
def teste_(nome): 
    print nome 
#Button 
botao_ok.bind(on_press=teste_('Ola')) 
# Button is inside a Class MYApp 

,並給出了錯誤:Asse田:沒有沒有贖回

伊夫tryied一切我強硬關閉並不能解決這個... 臨屋NK你

+0

重複:http://stackoverflow.com/questions/39809206/kivy-python-passing - 參數與功能按鈕點擊 –

回答

1

當你寫teste_('Ola')函數運行和返回None

所以,當你寫

botao_ok.bind(on_press=teste_('Ola')) 

它實際上被設置爲:

botao_ok.bind(on_press=None) 

這在短期導致您的問題。

爲了得到它叫teste_('Ola')當按下按鈕時,您可以使用lambda函數:

botao_ok.bind(on_press=lambda x:teste_('Ola')) 
+0

該死的喇嘛......謝謝,它的工作現在。 –