在Glade中使用文件选择对话框
我想问一下,有没有人知道怎么在glade和pygtk中使用文件选择对话框?(其实在其他语言中用法也差不多,所以我没有特别说明语言。)基本上,这个文件选择对话框现在看起来是这样的:左边是文件夹的列表,右边是文件的列表。对话框底部有两个空位,用来放两个按钮,所以我就放了一个“取消”和一个“确定”按钮。但是我的问题是,这个对话框返回什么呢?我的代码是这样的:
filename = None
response = self.widget('filechooserdialog').run()
print response
#if response == Gtk.RESPONSE_OK:
filename = self.widget('filechooserdialog').get_filename()
self.widget('filechooserdialog').hide()
目前,“取消”和“确定”按钮的回调函数只是让对话框隐藏起来。但我找不到这个对话框应该返回什么。换句话说,我怎么才能知道是按了“取消”还是“确定”按钮呢?
谢谢,
v923z
PS:这里有一张图片来说明情况:
1 个回答
7
对话框中的按钮会返回一个响应ID,这个ID和你按下的按钮是关联的。比如说,当你在glade里创建“取消”和“确定”按钮,并把它们放到文件选择对话框的空位上时,你可以在右下角的编辑框中看到一个叫“按钮属性...”的标题。在这里,你会找到一个选项叫做响应ID:
(这是一个默认值为0的调节按钮),它在常规
标签下。你只需要把这个值设置成你希望在按下这个按钮时接收到的值。对于不同的按钮,设置不同的值。这样,当你运行对话框并按下按钮时,就会得到你之前设置的响应ID。根据这个ID,你就可以执行相应的操作。
希望这对你有帮助!