动态对话框的创建

来源:互联网 发布:泰坦之旅 知乎 编辑:程序博客网 时间:2024/05/16 04:54

动态对话框是指在运行时由.ui文件创建的对话框。它不是用uic.ui文件转化为c++代码,而是使用类QuiLoader在运行时将文件加载。使用示例如下:

QUiLoader uiLoader;QFile file("sortdialog.ui");QWidget *sortDialog = uiLoader.load(&file);if (sortDialog) {    ...}

可以使用QObject::findChild<T>()方法来方法来访问动态对话框中的子组件。例如:

QComboBox *primaryColumnCombo =        sortDialog->findChild<QComboBox *>("primaryColumnCombo");if (primaryColumnCombo) {    ...}

注意,该方法不适用于MSVC6,在MSVC6中,就使用全局函数qFindChild<T>(),它的使用方式与QObject::findChild<T>()一致。另外,QuiLoader类位于一个单独的库中,要在一个Qt应用程序中使用该类,必须在工程文件中添加如下信息:

CONFIG += uitools


原创粉丝点击