FileChooserButton Gtk

Может ли кто-нибудь сказать мне, какой тип сигнала для FileChooserButton я должен использовать, чтобы получить путь к файлу, щелкнув фактический файл в FileChooserDialog, который был вызван FileChooserButton? Я использовал сигналы file_set и file_activated, но ничего не произошло.

Я использовал пример из документации по языку Vala. И я не уверен, должны ли быть кнопки Открыть\Отмена в этом диалоге (см. скриншот ниже)?

Вот код, который я использовал:

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);
});

Скриншот

Заранее спасибо!


person Anton    schedule 21.06.2016    source источник
comment
Я думаю, что в вашем printf отсутствует \n   -  person Jussi Kukkonen    schedule 21.06.2016
comment
file-set используется, когда пользователь нажимает «Открыть», чтобы выбрать файл, тем самым изменяя файл, который представляет GtkFileChooserButton. file-activated используется, когда пользователь дважды щелкает файл в GtkFileChooserWidget; Я предполагаю, что GtkFileChooserDialog и GtkFileChooserButton и то, и другое при нажатии кнопки «Открыть». Полагаю, вы хотите selection-changed? То есть , предполагая, что я правильно прочитал ваш вопрос и что вы хотите получать уведомления при нажатии элемента в списке. Я?   -  person andlabs    schedule 21.06.2016


Ответы (1)


Решил! Проблема была в отсутствующих кнопках Ok\Cancel, такое бывает только в Elementary OS, по-моему.

Команда: gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/DialogsUseHeader':<0>}" сделала свое дело! Спасибо за ответы.

person Anton    schedule 22.06.2016
comment
Сообщить об ошибке авторам Elementary? Предполагая, что вы используете последнюю версию всего... - person andlabs; 22.06.2016
comment
@andlabs да, я сообщил об ошибке. И обновляю каждый день - person Anton; 23.06.2016