GTK +のメニュー項目の一部を無効/無効にしようとしています。私はCでGTK + Gladeのメニューを作成しましたが、いくつかの外部イベントではメニューオプションのいくつかを無効にする必要があります。GtkMenu項目の一部を無効/無効にする方法
どうすればいいですか?
GTK +のメニュー項目の一部を無効/無効にしようとしています。私はCでGTK + Gladeのメニューを作成しましたが、いくつかの外部イベントではメニューオプションのいくつかを無効にする必要があります。GtkMenu項目の一部を無効/無効にする方法
どうすればいいですか?
gtk_widget_set_sensitive(menuitem, true/false)
を使用して、メニュー項目ウィジェットを無効または有効にすることができます。
また、GtkUiManagerとGtkActionを使用してメニューを構築した場合は、代わりにgtk_action_set_sensitive()
を使用してください。
使用:どのように私は、そのメニュー項目が選択されている知ってもらうことができます
gtk_widget_set_sensitive (menuitem,FALSE); // to gray-out
gtk_widget_set_sensitive (menuitem,TRUE); //to enable
もう一つ質問..を...私はGladeの中でメニューを作成している...私はいくつかの定数IDまたは列挙型定数関連付けることができます各メニュー項目に...コールバックで私は定数に応じて機能を二分することができます。 – User7723337
各項目の「有効化」信号に異なるコールバックを添付することも、すべての項目を1つのコールバックに接続して最初の引数をチェックして、選択した項目を確認することもできます。詳細はhttp://library.gnome.org/devel/gtk/unstable/GtkMenuItem.html#GtkMenuItem-activateをご覧ください。 –