【问题标题】:FileChooserDialog in pygtkpygtk 中的 FileChooserDialog
【发布时间】:2013-12-08 17:47:45
【问题描述】:

问题很简单:我只想根据需要多次打开 FileChooserDialog,而不需要重新创建相同的小部件。

销毁信号/方法不适合我,因为我不想销毁对对象的引用,我只需要隐藏 FileChooserDialog

问题是,通过这段代码,我只得到带有按钮的对话框,但没有其他内容(没有路径、没有文件列表、没有文件夹..)只有按钮和一个灰色的空白窗口。

代码如下:

self.__file_chooser_dialog = gtk.FileChooserDialog("Open..",
                                        None,
                                        gtk.FILE_CHOOSER_ACTION_OPEN,
                                        (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
                                        gtk.STOCK_OPEN, gtk.RESPONSE_OK))

def file_chooser_event(self, widget, data=None):
        self.__file_chooser_dialog.show_all()
        response = self.__file_chooser_dialog.run()
        if response == gtk.RESPONSE_OK:
            print self.__file_chooser_dialog.get_filename(), 'selected'
        elif response == gtk.RESPONSE_CANCEL:
            print 'Closed, no files selected'

        self.__file_chooser_dialog.hide_all()


self.__load_config=gtk.Button('Carica file di configurazione\n(nome__file.ini)')
self.__load_config.connect('clicked', self.file_chooser_event)

【问题讨论】:

    标签: python gtk pygtk filechooser


    【解决方案1】:

    您应该考虑使用为此目的而存在的gtk.Widget::hide_on_delete

    【讨论】:

      【解决方案2】:

      我已经尝试了多种方法让它工作..你只需要做这个编辑:

      self.__file_chooser_dialog.show_all() -----> self.__file_chooser_dialog.show()
      
      self.__file_chooser_dialog.hide_all() -----> self.__file_chooser_dialog.hide()
      

      你能解释一下为什么会这样吗?!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-09-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多