Qt C++:多个.ui文件中的动态GUI
我一直在Qt中开发GUI应用程序。我需要从不同的表单文件(.ui)加载GUI。 请耐心等待,因为我要写很多东西。Qt C++:多个.ui文件中的动态GUI
这个想法是保持我的应用程序完全灵活,用户可以通过简单编辑.ui文件来更改界面,并且不需要修改添加到.ui文件的新元素的源代码。
我也试图在多个层次上划分软件。 (我会尝试以下澄清。)
例如:(请参阅所附的图像我在单个文件合并所有的图像,因为我的帐户不被授权添加两个以上的图像。)
我有主窗口作为图像(主)显示
的first.ui文件包含主插件,其是标签插件和看起来像在图像(第一)
第二如图.ui文件包含第二个小部件我需要添加到标签小部件。 第二种形式的样子,如图图像(二)
在结束时,完整的接口看起来像所示的图像(最后)Image Link Here
在我的代码已完成以下操作:
/* 创建一个带菜单栏的主窗口。 菜单栏有一个动作来选择并打开first.ui文件。 打开的文件由QUiLoader加载器加载。
First.ui文件包含一个带有两个选项卡和一个标签的QTabWidget。 在标签,我已经给到另一个文件second.ui
装载器装载打开文件的路径,并返回QWidget的
返回QWidget的已经被设置为在主窗口一个CenntralWidget。
然后我读了first.ui文件来查找标签中给出的文本(这是另一个文件second.ui的路径)。
一旦我获得了该路径,我已经使用loader加载了第二个.ui文件。 该文件包含一个窗体布局和几个按钮的小部件。
现在我试图将这个获得的小部件添加到从以前的文件加载的选项卡。
CASE 1: 我成功设法做到了这一点: selectedTab-> layout() - > addWidget(otherWidgetObainedFromSecondFile);
但在这种情况下,问题是,我无法访问窗体和按钮的元素。 也就是说,按钮和表单字段看起来不像活动元素。 它们只是看起来像在选项卡中修复的快照。
CASE 2: 所以,相反,我决定不直接将小部件添加到选项卡。 但我创建了另一个MainWindow,将第二个小部件设置为centralWidget到这个新的主窗口。 然后将此主窗口添加到选项卡。
但它也给了我相同的结果。
*/
请给我一个解决方案。 我对不同的建议持开放态度,但我想保持这个想法一样,即GUI必须保持分层形式(从多个ui文件加载)
我会非常感谢您的帮助。
addTab方法,如果你刚才展示的窗口小部件?它仍然像静态图像一样吗? – thuga
如果我单独显示小部件,那么它看起来很活跃并且不像图像。 – Aakash
“selectedTab”是什么? – thuga