首页| 论坛| 消息

标题:Qt官方范例中,使用QUiLoader加载UI文件,结合插件的问题。
作者:caiwei_cs
日期:2017-08-04 14:54
内容:

官方范例1:Calculator Builder Example 中有如下代码:
QUiLoader loader;

QFile file(":/forms/calculatorform.ui");
file.open(QFile::ReadOnly);
QWidget *formWidget = loader.load(&file, this);
file.close();

ui_inputSpinBox1 = findChild("inputSpinBox1");
ui_inputSpinBox2 = findChild("inputSpinBox2");
ui_outputWidget = findChild("outputWidget");
实现了,动态加载UI文件,并且通过findChild查找到UI文件中的控件,能够对控件做进一步的操作。
官方范例2:World Time Clock Builder Example 中也用QUiLoader加载UI文件,并且文件中包含插件生成的控件,WorldTimeClock(插件在官方范例 World Time Clock Plugin Example中生成)。我希望像第一个范例一样,能够查找并使用UI文件中的控件。
QFile file(":/forms/form.ui");
file.open(QFile::ReadOnly);
QWidget *widget = loader.load(&file);
//自己加入—begin
//qt自带控件可以
QLabel_currentTime = widget->findChild("label");
qDebug()setText("lala");
//插件加入的控件,报错
WorldTimeClock * ui_clock;
ui_clock = widget->findChild("worldTimeClock");
qDebug()className();
ui_clock->setTimeZone(2);
//自己加入-end
file.close();
widget->show();范例位置:$$/designer/worldtimeclockbuilder
报错:
D:\Qt\Qt5.5.1\Examples\Qt-5.5\designer\worldtimeclockbuilder\main.cpp:77: error: undefined..

回复 发表
主题 版块