corner imagecorner image
IDEPlatformPluginsDocs & SupportCommunityPartners

使用 Qt 应用程序 - NetBeans IDE 6.9 教程

本教程将指导您在 NetBeans IDE 6.9 中创建一个 Qt 应用程序项目。Qt 工具包是一个开源的跨平台应用程序开发框架。

目录

本页上的内容适用于 NetBeans IDE 6.9

要求

要学习本教程,您需要具备以下软件。

软件 要求的版本
NetBeans IDE(支持 C/C++) 版本 6.9
Java Development Kit (JDK) 版本 6
GNU C/C++ 编译器 (GCC) NetBeans IDE 支持的版本。
在 Windows 上,需要使用与 Qt SDK 捆绑在一起的 MinGW。
Qt 库 版本 4.6.2

有关下载并安装所需 NetBeans 软件的信息,请参见 NetBeans IDE 6.9 安装说明

简介

NetBeans IDE 支持在 IDE 内创建、生成、运行和调试 Qt 项目。Qt 工具(如 qmake、moc 和 uic)可在需要时自动启动。您不必去考虑(甚至不需要了解)它们。

安装 Qt 软件

将 NetBeans IDE 与 Qt 一起使用时,在非 Windows 平台上无需完整的 Qt SDK。您可以按照配置 NetBeans IDE 以使用 C/C++/Fortran 中的所述安装编译器,然后可以下载 Qt 库和工具(也称为 Qt 框架)。

但是,在 Windows 上应安装 Qt SDK 以避免潜在问题。

在 Windows 上设置适用于 NetBeans IDE 的 Qt

Qt 4.6.2 SDK 包括 MinGW 环境和 gcc 4.4 编译器。该捆绑的 MinGW 与 Qt 配合使用的效果最佳,因此,您应该使用它而不是其他版本的 MinGW 或 Cygwin。

  1. 按照配置 NetBeans IDE 以使用 C/C++/Fortran 中的所述安装 NetBeans IDE 和 C/C++ 插件模块,但不要按照该文档中的所述安装 Cygwin 或 MinGW。
  2. 下载 MSYS-1.0.10.exe 并将其安装到缺省位置。
  3. 下载并安装包括 MinGW 和 gcc 的 Qt 4.6.2 SDK。如果 Qt Creator 自动启动,则可以将其关闭。
  4. 在 NetBeans IDE 中,选择“工具”>“选项”> "C/C++" 以打开 C/C++ 属性。
  5. 单击“工具集合”区域中的“添加”。
  6. 将 Qt MinGW 安装的 bin 目录指定为工具集合的基目录(例如 c:\Qt\2010.02.1\mingw\bin)。
  7. 将“工具集合名称”设置为 MinGW_Qt,单击“确定”,然后单击“选项”对话框中的“确定”。
  8. 继续执行本文创建简单的 Qt 应用程序中的步骤。

在 Linux 或 Mac OS X 平台上设置适用于 NetBeans IDE 的 Qt

您可以从 http://qt.nokia.com/downloads 下载完整的 Qt SDK,或者仅下载适用于您的 Linux 或 Mac OS X 平台的 Qt 框架。

您应该单独安装编译器。Qt SDK 中不包括编译器,这一点与 Windows 不同。

在安装 Qt 软件包之后,请确保可从命令行中使用 Qt 工具。在终端中键入 qmake -v 应输出 Qt 版本信息而不是错误消息。如果未找到 qmake,请将 your-Qt-installation-dir/bin 添加到 PATH 环境变量中。如果下载的是 SDK,则 qmake 的路径应该与 /home/user/qtsdk-2010.02/qt/bin 类似。

当 Qt 工具可从命令行中使用时,请继续执行本文创建简单的 Qt 应用程序中的步骤。

在 Solaris 平台上设置适用于 NetBeans IDE 的 Qt

对于 Solaris 平台,没有可用的 Qt 二进制文件。但是,可以通过从正式的 Qt 源代码库中获得的源代码生成 Qt 库。

有关通过源代码生成 Qt 的其他有用链接为
Git 安装获取源代码



创建简单的 Qt 应用程序

在本教程中,我们将创建一个简单的 "Hello World" Qt 应用程序,该程序与 Hello Qt World 样例类似(可以在“样例”-> "C/C++" -> "Hello Qt World" 中找到该样例)。

  1. 首先,创建一个新项目。在“新建项目”对话框中选择“C/C++ Qt 应用程序”,然后单击“下一步 >”。

    新建 Qt 项目对话框

  2. 在下一个对话框中,根据需要更改项目的名称和位置。选中“创建主文件”,然后单击“完成”。
  3. 新建 Qt 项目对话框

    新创建的项目如下所示:

    Qt 项目和 main.cpp 文件

  4. 右键单击该项目节点,然后选择“属性”以打开“项目属性”对话框。单击 "Qt" 类别。高级用户可以调整 Qt 项目属性中的许多设置,但是我们将保留所有缺省设置。
  5. Qt 项目属性对话框

  6. 接下来,我们将创建一个对话框。右键单击“资源文件”,然后选择“新建”->“Qt 窗体...”。
  7. 向 Qt 项目中添加资源文件

  8. 在“新建 Qt 窗体”对话框中,键入 HelloForm 作为窗体名称,然后选择“无按钮的对话框”作为窗体类型。选中“创建 C++ 包装类”,然后单击“完成”。
  9. Qt 新窗体

    随即会创建三个文件(HelloForm.uiHelloForm.cppHelloForm.h),同时 NetBeans 将自动打开 Qt 设计器,以便于您编辑新窗体 (HelloForm.ui)。

    自动打开 Qt 设计器

  10. 使用您所具备的 GUI 技能创建一个类似于如下所示的窗体。此窗体应该包含两个 QLineEdit 小部件。第一个小部件应该名为 nameEdit,第二个小部件应该名为 helloEdit
  11. 显示您所创建的窗体的 Qt 设计器

  12. 在创建完窗体之后,关闭 Qt 设计器。该项目如下所示:
  13. Hello 窗体源文件

    所有新创建的 HelloForm 文件都将置于“资源文件”逻辑文件夹中。如果您希望将 CPP 文件置于“源文件”中,而将 H 文件置于“头文件”中,只需将这些文件拖放至所需的逻辑文件夹中即可。

    “项目”标签中有一个小问号,表示中断的 #include 指令。带有红色下划线的 setupUi 便是由此引起的。

    中断的 #include 指令为 HelloForm.h 中的 #include ui_HelloForm.h。实际上,已不存在 ui_HelloForm.h。包含文件将在第一次生成项目时生成。这就是 Qt 生成系统的工作方式。只需单击工具栏上的“生成主项目”按钮,错误便应消失。

  14. 现在,打开 main.cpp 并插入两行负责创建并显示 HelloForm 的代码。切勿忘记包含 HelloForm.h
  15. 编辑 Hello 窗体源文件

  16. 运行该应用程序,并查看您在 Qt 设计器中创建的窗口的显示效果。

    可在文本字段中键入任何内容,但是不会出现任何响应。下面,就让我们使该应用程序显示一条包含文本字段中输入的姓名的问候消息。

  17. 我们需要定义一个槽函数 (slot),并将其连接至由文本字段引发的 textChanged 信号。要了解有关 Qt 信号和槽函数的详细信息,请参阅 http://doc.qt.nokia.com/4.6/signalsandslots.html

  18. 转至 HelloForm.h 并声明以下槽函数:
  19. 编辑 Hello 窗体包含文件

  20. 然后,转至 HelloForm.cpp 并插入该槽函数的定义:
  21. 将槽函数添加到窗体源文件

  22. 最后,在 HelloForm 构造函数中插入一些代码,以便连接信号和槽函数:
  23. 将槽函数添加到 Hello 窗体构造函数

  24. 现在,运行该应用程序,随即会出现一些有趣的内容!
  25. Qt Hello World 应用程序正在运行

小结

请使用 NetBeans 创建和开发 Qt 应用程序,并将您的意见和建议发送至 CND 邮件列表

如果发现错误或者希望提出有关如何增强功能的建议,请将这些错误或建议提交至 http://netbeans.org/bugzilla/enter_bug.cgi?component=cnd(需要在 netbeans.org 上注册)。