【发布时间】:2016-06-21 19:58:54
【问题描述】:
谁能告诉我我必须使用什么类型的信号来获取FileChooserDialog 中由FileChooserButton 提出的实际文件来获取文件路径?我同时使用了file_set 和file_activated 信号,但什么都没发生。
我使用了 Vala 语言文档中的一个示例。而且我不确定该对话框中是否应该有 Open\Cancel 按钮(请参见下面的屏幕截图)?
这是我用过的代码:
Gtk.FileChooserButton file_chooser = new Gtk.FileChooserButton(
"Select a file",
Gtk.FileChooserAction.OPEN);
file_chooser.set_show_hidden(true);
file_chooser.set_local_only(false);
file_chooser.set_current_folder("/home");
Gtk.FileFilter filter = new Gtk.FileFilter();
filter.add_mime_type("application/x-shellscript");
file_chooser.set_filter(filter);
file_chooser.file_set.connect(() => {
string uri = file_chooser.get_uri();
stdout.printf("Uri: %s", uri);
});
提前致谢!
【问题讨论】:
-
我认为您的 printf 中缺少“\n”
-
file-set用于当用户单击打开以选择文件时,从而更改 GtkFileChooserButton 所代表的文件。file-activated用于当用户双击 GtkFileChooserWidget 中的文件时;我假设 GtkFileChooserDialog 和 GtkFileChooserButton 都是单击打开。 I'm guessing you wantselection-changed? 也就是说,假设我正确阅读了您的问题,并且您希望在单击列表中的项目时收到通知。我有吗?
标签: gtk gtk3 vala filechooser