現在我有一個窗口包含許多執行類似行爲的按鈕,因此對它們使用相同的信號處理程序是很自然的。但是,在信號發生後,我無法區分它們。是的,我有指向該對象的指針,但我無法確定它是第一個按鈕,第二個按鈕還是別的。Gtk + Glade:使用相同信號處理程序的小部件。如何區別對方?
我認爲在林間空地的'Name'屬性(我將它設置爲'togglebutton1')可以通過gtk_widget_get_name
函數獲得,但是我錯了,我得到了'GtkToggleButton'。該XML文件說:<object class="GtkToggleButton" id="togglebutton1">
。
那麼無論如何要利用'id'屬性,還是有任何更好的解決方案來識別thoses按鈕?非常感謝。
非常感謝,還有一個問題,你知道從UI分離代碼是一個好習慣,所以最好不要在代碼中使用gtk_widget_set_name,而應該在代碼中使用gtk_widget_set_name。有沒有什麼方法可以在glade中使用'Name'屬性,或者在glade中執行gtk_widget_set_name行爲? – Cauly 2011-06-06 14:38:16
我在回答中添加了一些額外的信息。 – Jason 2011-06-06 15:12:06