运行时错误缺少处理程序python glad

2024-09-27 23:15:34 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的一段代码

class gui_manage():
    def delete_event(self , widget , data):
        False
        print 'delete'
    # #######################
    # define some functions here
     as example : start_download(self ,widget)
    ########################################
    def start_download( self , widget  ):
        print 'add_url_clicked'

    def __init__(self):
        builder = gtk.Builder()
        builder.add_from_file('gui.glade')
        win=builder.get_object('add_url_win')
        text_entry= builder.get_object('url_entry')
        signals ={ 
         'delete_event' : self.delete_event , 
         'destroy' : self.destroy  ,
         'cancel_button_clicked' : self.delete_event , 
         'addpaused_button_clicked' : self.addpaused ,
     'start_download_clicked' : self.start_download , 
         'addpaused_button_clicked' : self.addpaused 
         }
        builder.connect_signals(signals)

glade文件显示了相应的行:

^{pr2}$

我得到了一个错误:

gui_manage.py:45: RuntimeWarning: missing handler 'start_download'
  builder.connect_signals(signals)

但是,被单击的“取消按钮的事件”调用的delete_event()方法成功。在

简言之,所有的方法都是用同样的方式定义的,连接在同一个字典中,虽然有些是缺失的!在


Tags: selfeventaddurldownloaddefbuildergui
1条回答
网友
1楼 · 发布于 2024-09-27 23:15:34

现在效果很好:

'def start_download( self , object  ):
    print 'add_url_clicked''

而不是

^{pr2}$

&

'self.signals = {}'

而不是

'signals = {}'

&

'self.builder.connect_signals(self)'

而不是

'self.builder.connect_signals(signals)'

所有的人

相关问题 更多 >

    热门问题