如何在Qtdesigner中创建.ui文件的头文件和源文件?

问题描述 投票:0回答:5

我有一个应用程序,其中有一个 mainwindow.ui 文件,并且我在同一应用程序中创建了一个新的设计器文件dialoge.ui,现在我如何为dialoge.ui 创建源文件和头文件。我正在使用 QtCreater(windows)。

我是 qt 的初学者,我认为应该有一种方法可以达到同样的目的,但我没有得到。 帮我。 谢谢

qt
5个回答
14
投票

您可以从外部的 .ui 文件创建源代码和标头,然后将它们导入到您的应用程序中(不要忘记在 .pro 文件中引用它们)。创建可执行文件(.bat.exe)来执行以下命令。下面是一个shell脚本(我是linux用户):

echo HEADERS 
<path to your uic compiler>/uic -o form.h form.ui 
echo SOURCES 
<path to your uic compiler>/uic -i form.h -o  form.cpp form.ui

3
投票

对于每个文件 somewidget.ui,在构建过程中将创建 ui_somewidget.h 和 ui_somewidget.cpp。用于生成它们的工具是 uic。 您所要做的就是确保将 .ui 文件以及其他源文件和头文件添加到项目的 .pro 文件中,如下所示:

 FORMS += somewidget.ui

qmake/make 将自动生成并构建 somewidget.ui 的 .cpp 和 .h 文件。


2
投票

你可以这样做:

将dialoge.ui 文件保存在目录中。 使用 qmake 创建 .pro 文件(qmake -project),qmake 足够智能来检测 .ui。 这还将生成适当的 makefile 规则来调用 uic(Qt 的用户界面编译器)。 如果您使用的是Visual Studio,您可以调用qmake -tp vc,这将生成一个Visual Studio项目,链接并准备使用。 Visual Studio项目将为您生成一个ui_dialoge.h,您可以将其复制到另一个项目并在另一个将使用此dialoge.ui的头文件中使用它


1
投票

我不确定我是否完全理解你的问题。您有一个在 QtCreator 中开发的应用程序,其中有 2 个 .ui 文件。并且你想生成这2个文件对应的头文件/源文件。

使用QtCreator你不需要担心生成头文件。这是自动完成的。在构建阶段,会调用

User Interface Compiler (uic)
并将 .xml 文件转换为 C++ 头文件。


0
投票

除了已经正确的答案之外:在常规设置中从 Debug 更改为 Release 模式。就我而言,头文件不是在 Debug 模式下创建的

© www.soinside.com 2019 - 2024. All rights reserved.