python GtkComboBox.remove_all():如何防止触发更改的信号

时间:2014-07-09 18:07:59

标签: python gtk3

我使用Glade设计了一个gtk3布局,包括一些comboboxtext小部件。

bookings_tour_selector ComboBoxText连接了changed信号,因此当用户选择一个选项时,会检测到该信号。那部分工作正常。

现在问题是,当我拨打电话时:bookings_tour_selector.remove_all() changed信号会针对每个被移除的项目触发一次。这不是预期的行为。我希望它根本不会触发信号。

如何在移除物品时阻止触发此信号?

1 个答案:

答案 0 :(得分:0)

只需在回调中添加条件,即:

def on_changed_combobox (self, widget):
    if self.bookings_tour_selector.get_active () != -1:
        #do whatever you want when combo box changed
        #if not, it simply, does nothing