1

非常に簡単な質問GtkEntryです。編集可能に設定したいウィジェットがあります。私が使用すべき関数は次のとおりです。

gtk_editable_set_editable

GtkEntryしかし、ウィジェットを引数として取る方法がわかりません

これが私が使用しているコードです:

GtkWidget *TextEntry;
TextEntry = gtk_entry_new();

gtk_entry_set_visibility(GTK_ENTRY(TextEntry), TRUE);
gtk_entry_set_editable(GTK_ENTRY(TextEntry), TRUE);
gtk_entry_set_overwrite_mode(GTK_ENTRY(TextEntry), TRUE);
gtk_widget_set_can_focus(GTK_WIDGET(TextEntry), TRUE);
gtk_widget_grab_focus(TextEntry);

panel_applet_request_focus(applet, 10);
gtk_container_add (GTK_CONTAINER (applet), TextEntry);

gtk_widget_show_all (GTK_WIDGET (applet));

キーボードフォーカスを取得する限り、私はその機能が必要だと思いpanel_applet_request_focus ()ます。問題のアプレットと、ウィンドウフォーカスをトリガーするイベントのタイムスタンプを渡す必要があります

タイムスタンプに何を入力すればよいかわかりません。上記のようにコードをコンパイルしましたが、アプレットをクリックしてもキーボードフォーカスを取得できません。

4

1 に答える 1

4

以下をせよ:

GtkWidget* entry = gtk_entry_new();
gtk_entry_set_editable(GTK_ENTRY(entry), TRUE);

GObjectの世界へようこそ:)

gtk_editableを使用していた場合は、次のことを行う必要があることに注意してください。

gtk_editable_set_editable(GTK_EDITABLE(entry), TRUE);
于 2010-04-27T12:14:54.083 に答える