qt怎么在qframe内动态创建按钮

qt怎么在qframe内动态创建按钮,第1张

动态对话框是在程序运行时用 Qt Designer 的.ui 文件创建。不用 uic工具把.ui 文件变成

等价的 c++代码,而是在程序时使用类 QUiLoader 加载.ui文件,例如下面的代码:中明

QUiLoader uiLoader

QFile file("sortdialog.ui")

QWidget *sortDialog = uiLoader.load(&file)

if (sortDialog) {

...

}

子控件可以用 QObject::findChild<T>()得到

QComboBox *primaryColumnCombo =

sortDialog->findChild<QComboBox *>("primaryColumnCombo")

if (primaryColumnCombo) { ...

}

findChild<T>()是模板成员函数,得到类型为 T 的给定名字的子控件的指针。由于编

译器的原因,用 MSVC6 是得不到的。如果使用的是 MSVC6,那么可以使用全局函数

qFindChild<T>()。

QUiLoader 类在一个单独的链接库中,如果在一个应用程序中使用了 QUiLoader,

必须在这个程序的.pro文件中添加下面这样的代码:

CONFIG += uitools

使用动态对话框不用卖悔告重新编译程序就能够改变前耐对话框的布局。

用庆弯一个layout,然后在layout中通过addWidget来添加label

QLabel *label = new QLabel

QVBoxLayout *layout = new QVBoxLayout( widget )

layout->addWidget( label )

z这样就可旦前以了誉迟闷


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11971179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存