我正在使用 Qt 框架编写一个 SDI(单文档接口)应用程序。
我目前遇到一个“小”问题:如果我在一个 MainWindow 中更改首选项,我希望同一 MainWindow 的所有其他实例都加载该首选项,例如:
窗口 2:
- 用户更改工具栏的可见性(隐藏它)。
- 使用 QSettings 功能保存设置。
所有其他窗口(可以根据用户的需要设置):
- 检测到 Window 2 保存了设置。
- 应用新设置。
我尝试了很多事情,例如使用 SIGNALS/SLOTS,但我无法更改所有窗口,因为在我的应用程序中创建 MainWindows 的方式是这样的:
窗口 1 创建窗口 2:
窗口 2 创建窗口 3:
窗口 3 创建窗口 4:
- 等等...
这意味着如果在 Window 3 中更改值,则只有 Window 2 会加载新设置。
你知道这样做的方法(如何将值传递给窗口的所有孩子(和父母))?