5

GTK+ 2.0 でいくつかの信号をテストしています。GtkEntry をクリックしたときにシグナルを発する方法を探しています。

if (widgets_info[i].action & IG_INPUT)
    {
      widget->frame[i] = gtk_entry_new_with_max_length(MAX_INPUT_LENGTH);
      gtk_entry_set_text(widget->frame[i], widgets_info[i].text);
      catch_signal(widget->frame[i], MY_SIGNAL, &change_entry, widget);
    }

エントリ ( ) に事前に選択されたテキストがwidgets_info[i].textあり、ユーザーが GtkEntry をクリックするとこのテキストが消えます。

誰かがこの信号が何であるか知っていますか?

(私の英語でごめんなさい)

4

2 に答える 2

5

フォーカスインイベントを試してください。ドキュメントで説明されているように、フォーカストラッキングを有効にする必要があることに注意してください。

于 2012-04-16T12:32:42.407 に答える
1

ボタンを押すイベント信号は、必要なことを行う必要があります: http://developer.gnome.org/gtk3/stable/GtkWidget.html#GtkWidget-button-press-event

ただし、GTK+ 3 では、GtkEntry がこのプレースホルダー テキストの考え方をサポートするようになったため、自分で実装する必要はありません: http://developer.gnome.org/gtk3/stable/GtkEntry.html#gtk-entry-setプレースホルダー テキスト

于 2012-04-18T09:28:07.347 に答える