6

css を介して gtk3 アプリケーションにキーバインドを追加しようとしています。これは私がこれまでに持っているものです:

// add style provider
GtkCssProvider *css = gtk_css_provider_new();                               
gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),         
        GTK_STYLE_PROVIDER(css), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);         
gtk_css_provider_load_from_path(css, "bindings.css", NULL);

これは、前のコード セグメントに読み込まれる「bindings.css」です。

@binding-set tree-view-bindings {
    bind "j" { "move-cursor" (display-lines, 1) };
    bind "k" { "move-cursor" (display-lines, -1) };
    bind "slash" { "start-interactive-search" () };
}

GtkTreeView {
    color: #F00;
    gtk-key-bindings: tree-view-bindings;
}

カラー設定が機能するので、完全に壊れることはありません。しかし、キーバインドはどれも機能しません。私は何が欠けていますか?

4

2 に答える 2

0

私が間違っていたらすみませんが、セミコロンを間違った場所に置いたと思います:)

@binding-set tree-view-bindings { bind "j" { "move-cursor" (display-lines, 1); } bind "k" { "move-cursor" (display-lines, -1); } bind "slash" { "start-interactive-search" (); } }

于 2014-10-21T12:05:34.353 に答える
0

それは私のために次のように働きました:

treeview { 
  -gtk-key-bindings: tree-view-bindings;
}

そうGtkTreeViewなりtreeviewgtk-key-bindingsなりました-gtk-key-bindings

備考:

  • 適切なセレクターを使用するには、いつでもインスペクターを使用できます。GTK_DEBUG=interactive
于 2020-05-16T20:23:12.223 に答える