5

ID をハードコーディングせずに、定義済みの応答 (例: GTK_RESPONSE_OK)を使用する方法はありますか? GtkDialogGlade は、デフォルトで「0」を含む XML を生成し、数値エントリを提供します。-5 を入力できると思いますが、それは定数を持つという点を無効にしているようです。

Glade XML は次のようになります。

<action-widgets>
  <action-widget response="0">cancel-button</action-widget>
  <action-widget response="0">connect-button</action-widget>
</action-widgets>

ドキュメントの例でも:

<action-widgets>
  <action-widget response="3">button_ok</action-widget>
  <action-widget response="-5">button_cancel</action-widget>
</action-widgets>

(" " に -5 ( GTK_RESPONSE_OK) を使用していることを考えると、これはちょっとばかげていますbutton_cancel…)

4

1 に答える 1

1

GTK 3.12 以降、応答に nck-names を使用できます。

commit baa471ec130c360a5c4ae314769bc7b858814219
Author: Jasper St. Pierre <jstpierre@mecheye.net>
Date:   Mon Oct 28 11:19:43 2013 -0400

  gtkdialog: Allow specifying response IDs by nick in <action-widgets>

  This makes it a lot more convenient for developers, as they don't
  have to look up the numeric value of response IDs.

だからあなたは今できる

<action-widgets>
  <action-widget response="ok">button_ok</action-widget>
  <action-widget response="cancel">button_cancel</action-widget>
</action-widgets>
于 2014-05-04T15:20:19.993 に答える