
Ubuntu日本語フォーラム

ログインしていません。
GTK+3.0で文字だけの省スペース・リストを作ろうとしたのですが、ComboBoxは引数が多くて難しく、ComboBoxTextを使いました。
確かに簡単なのですが、デフォルトの文字を入れる方法が分かりません。
よって、起動時のBomboBoxTextのtextはNULLになってしまいます。
Devhelpでも、解決する記載を見つける事ができません。
解決方法、もしくはGTK+バージョン3.4以降の参考書をご存知であれば、教えていただけると助かります。
よろしくお願い致します。
オフライン
gtk_combo_box_set_active (GtkComboBox *combo_box, gint index_);
を利用されてはいかがでしょうか。
GtkWidget *comboBox = gtk_combo_box_text_new_with_entry(); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (comboBox), "text 1"); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (comboBox), "text 2"); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (comboBox), "text 3"); gtk_combo_box_set_active (GTK_COMBO_BOX (comboBox), 1);
gtk_combo_box_set_active の第2引数を変えると起動時に表示されるテキストが変わります。
参考書はわかりませんが、私は libgtk-3-doc のパッケージをインストールして
/usr/share/doc/libgtk-3-doc/gtk3/index.html を眺めたり
http://developer.gnome.org/gtk3/stable/
を眺めてそれらしき関数を探しています。
オフライン
n_gram_8様の示していただいた方法で、簡単にデフォルト文字が入りました。
ComboBoxとComboBoxTextは別物だと思い込んでいたのですが、目からウロコが落ちました。
誠にありがとうございました。
やはり、GTK+3.0で頼る所に、日本語は少ないですね。
英語に慣れなくては。
オフライン
解決したようでなによりです。
今回は#2に書いたURLで GtkComboBoxText の項目を見てて
GObject
+----GInitiallyUnowned
+----GtkObject
+----GtkWidget
+----GtkContainer
+----GtkBin
+----GtkComboBox
+----GtkComboBoxText
と GtkComboBoxText が GtkComboBox の派生だったので gtk_combo_box_set_active が使えるんじゃないかと気づきました。
派生したウィジェットには,元となったウィジェットに対する関数を適用できるらしいので、
目的のことを行うウィジェットや関数がある程度分かっているならこういうところも参考になります。
使用するウィジェット自体がわからないと調べるのが大変なんですけどね。
オフライン
とても勉強になります。
解説していただき、重ねて御礼申し上げます。
オフライン