如果我有一个可以通过菜单项或配置窗口访问的设置,可以在运行时更改,例如“粗体文本打开/关闭”;确保所有适用组件都了解此设置的价值的一些好方法是什么?
答案 0 :(得分:0)
您没有提供实现语言的细节,因此asnwer在某种程度上是通用的。 假设您的GUI使用的语言甚至支持模型(例如Java),只需为任何应该受设置影响的组件设置事件处理程序,并在事件“设置已更改”时触发。然后从设置配置窗口调用此类事件。当所有组件都完成更新时,不要忘记重绘(在每个组件更新时重新绘制)。
另外一点是希望使用通用子组件。 例如,如果您使用具有可配置的特定字体的标签文本,则使用通用的“带可配置字体的标签”类,以确保您永远不需要将上述事件侦听器分配给您创建的每个标签。
答案 1 :(得分:0)
如果有很多设置我已经实现了一个sqlite数据库来保存更改少量更改文件中的键值对就足够了。然后实现一个观察者设计模式,这样当完成任何更改时,会调用一个gui类列表来进行更改。