2013-02-27 140 views
2

我正在使用Python 3與gobject內省的Gtk。如何將多個切換按鈕鏈接在一起,以便它們的行爲類似於製表符或單選按鈕 - 例如,一個是默認選擇的,而另一個是clicked之前的active則取消選擇。如何鏈接一組切換按鈕,如單選按鈕?

我已經嘗試過使用set_sensetive,但是它會塗抹它應用的部件。

回答

2

使用set_active()(或props.active)。或者,您可以創建一些Gtk.RadioButton小部件並將draw_indicator屬性設置爲False。在後一種情況下,您可以按照正常方式創建廣播組,而無需自定義處理。

+0

您的「替代」解決方案在我看來是首選。 – ptomato 2013-02-28 09:36:36

+0

@doublep,請參閱我的回覆iain對您的第一個建議的回答,但我會接受您對'替代'建議的回答。 – 2013-02-28 16:35:03

+0

@doublep,順便說一句我想你的意思是'Gtk.ToolButton.set_mode(False)' – 2013-02-28 16:47:04

1

您可以聽到切換按鈕上的切換信號,然後在其他人上撥打set_active()。您需要在撥打set_active()時阻止切換的信號,以免進入循環。

+0

我已經創建了一個回調函數,當'clicked'信號發出時執行,它將按鈕設置爲活動狀態,它被點擊(因爲我不希望所有按鈕都不活動),但看起來該函數在執行回調之前執行... – 2013-02-28 16:33:04