我有一个合理数量的组件附加到窗口。我想在按下按钮时更改这些组件的某些属性。 但是,在一个组件中一次执行此操作是一项无聊的工作,并且涉及许多代码行。 当信号被释放时,可以使组件监听其他组件信号以执行任务吗? 也就是说,像观察者模式。 如果这是不可能的。什么是对这些组件进行大规模更改的最佳方法?
示例:
如果我想将所有其他组件重置为初始状态,那么"重置"按钮被触发? 为按钮信号创建处理程序并一次更改组件(条目,开关,CheckBose,...)非常累人
答案 0 :(得分:0)
这可能不是您想要的答案,但......
你可能在错误的地方进行优化。您的示例中的窗口需要大约6行非常直接的代码才能“重置”。与解决方案的好处相比,这是微不足道的:
这些比你最初编写代码所花费的两分钟要重要得多 - 即使你使表单更复杂,这也不太可能改变(尽管我会质疑基本设计,如果你最终得到一个屏幕上满是GtkEntries)。