2014-04-29 5 views
0

Ввод Ctrl-F в GtkTreeView включает всплывающее окно, в котором может быть вставлен поисковый запрос. Я хочу отключить это всплывающее окно, так как я хочу использовать Ctrl-F для другой цели. Кроме того, количество отображаемых данных довольно велико, поэтому ввод текста во всплывающем меню задерживает все приложение на несколько секунд.Отключить всплывающее окно интерактивного поиска GtkTreeView

This не дает ответа на вопрос, так как документы о gtk_tree_view_set_enable_search() государства:

Note that even if this is FALSE, the user can still 
initiate a search using the “start- interactive-search” key binding. 

Я попытался следующие без какого-либо заметного эффекта:

  • gtk_treeview_set_enable_search(false)
  • gtk_treeview_set_search_column(-1)
  • подключаетесь start-interactive-search и вернуть True для "handl ред!».

Im using Gtk + -3.12.

Подсказка?

ответ

1

Решено.

Либо использовать gtk_binding_entry_remove() развязывать Ctrl-F на TreeView, или использовать что-то по следующим направлениям:

css_provider = Gtk.CssProvider() 
css_provider.load_from_data(""" 
    @binding-set unbind_search { unbind "<Control>f"; } 
    GtkTreeView { gtk-key-bindings: unbind_search; } 
""".encode('utf-8')) 
context = Gtk.StyleContext() 
context.add_provider_for_screen(
    Gdk.Screen.get_default(), css_provider, Gtk.STYLE_PROVIDER_PRIORITY_USER 
) 
Смежные вопросы