C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序

这篇具有很好参考价值的文章主要介绍了C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

创建一个基于Qt Widget的应用程序

本教程介绍如何使用Qt Creator创建一个小型Qt应用程序,名为Text Finder。它是Qt UI工具中Text Finder示例的简化版本。应用程序的用户界面是使用Qt Designer通过Qt小部件构建的。应用程序逻辑是通过使用代码编辑器编写的C++代码。

C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

创建Text Finder项目

  1. 选择文件 > 新建文件或项目 > 应用程序 > Qt Widgets应用程序 > 选择。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记
    打开介绍和项目位置对话框。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  2. 在名称字段中,输入TextFinder。

  3. 在创建位置字段中,输入项目文件的路径。例如,C:\Qt\examples,然后点击下一步(在Windows和Linux上)或继续(在macOS上)。
    打开套件选择对话框。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  4. 选择您的项目的构建和运行套件,然后点击下一步或继续。

    注意:如果在工具 > 选项 > 套件(在Windows和Linux上)或Qt Creator > 首选项 >
    套件(在macOS上)中只指定了一个套件,则会跳过此对话框。

    打开类信息对话框。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  5. 在类名字段中,输入TextFinder作为类名。

  6. 在基类列表中,选择QWidget作为基类类型。

    注意:头文件、源文件和表单文件字段会自动更新以匹配类的名称。

  7. 点击下一步或继续。
    打开项目管理对话框。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  8. 查看项目设置,并点击完成(在Windows和Linux上)或完成(在macOS上)创建项目。

    注意:项目将以编辑模式打开,并隐藏这些说明。要返回到这些说明,请打开帮助模式。

素材文件

TextFinder项目现在包含以下文件:

  • textfinder.h
  • textfinder.cpp
  • main.cpp
  • textfinder.ui
  • textfinder.pro
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

.h.cpp文件包含了必要的样板代码。.pro文件是完整的。

填补缺失的部分

首先设计用户界面,然后继续填写缺失的代码。最后,添加查找功能。

设计用户界面

C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  1. 在“项目”视图中以编辑器模式双击打开textfinder.ui文件,启动集成的Qt Designer。
  2. 将以下小部件拖放到表单中:
  • 标签(QLabel)

  • 文本编辑框(QLineEdit)

  • 按钮(QPushButton)
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

    请注意:要轻松定位小部件,请使用侧边栏顶部的搜索框。例如,要找到标签小部件,开始键入“label”即可。

    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  1. 双击标签小部件,输入关键词文本。

  2. 双击按钮小部件,输入查找文本。

  3. 在属性窗格中,将对象名称更改为findButton。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  4. 按下Ctrl+A(或Cmd+A)选择小部件,点击水平布局(或在Linux或Windows上按Ctrl+H,或在macOS上按Ctrl+Shift+H)应用水平布局(QHBoxLayout)。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  5. 拖放一个文本编辑框小部件(QTextEdit)到表单中。

  6. 选择屏幕区域,点击垂直布局(或按Ctrl+L)应用垂直布局(QVBoxLayout)。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

    应用水平和垂直布局确保应用程序界面适应不同的屏幕尺寸。

  7. 要在用户按下查找按钮时调用查找函数,可以使用Qt的信号和槽机制。当特定事件发生时,会发出一个信号,而槽是响应特定信号的函数。Qt小部件具有预定义的信号和槽,可以直接在Qt Designer中使用。要为查找函数添加一个槽:

    • 右键点击查找按钮以打开上下文菜单。
    • 选择“转到槽”> “clicked()”,然后选择“确定”。
      会在头文件textfinder.h中添加一个私有槽on_findButton_clicked(),并在源文件textfinder.cpp中添加一个私有函数TextFinder::on_findButton_clicked()。
  8. 按下Ctrl+S(或Cmd+S)保存更改。

有关使用Qt Designer设计表单的更多信息,请参阅Qt Designer手册。

完成头文件

textfinder.h文件已经有必要的#include,一个构造函数,一个析构函数和Ui对象。你需要添加一个私有函数loadTextFile(),以读取并显示输入文本文件的内容在QTextEdit中。

  1. 在编辑视图的项目窗格中,双击打开textfinder.h文件进行编辑。

  2. 在private部分添加一个私有函数,在Ui::TextFinder指针后面,如下代码片段所示:

      private slots:
          void on_findButton_clicked();
    
      private:
          Ui::TextFinder *ui;
          void loadTextFile();
    

完成源文件

现在头文件已经完成,转到源文件textfinder.cpp。

  1. 在编辑视图的项目窗格中,双击打开textfinder.cpp文件进行编辑。

  2. 添加代码使用QFile加载文本文件,用QTextStream读取,并使用QTextEdit::setPlainText()在textEdit中显示它。如下代码片段所示:

      void TextFinder::loadTextFile()
      {
          QFile inputFile(":/input.txt");
          inputFile.open(QIODevice::ReadOnly);
    
          QTextStream in(&inputFile);
          QString line = in.readAll();
          inputFile.close();
    
          ui->textEdit->setPlainText(line);
          QTextCursor cursor = ui->textEdit->textCursor();
          cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1);
      }
    
  3. 为了使用QFile和QTextStream,在textfinder.cpp中添加以下#include:

      #include <QFile>
      #include <QTextStream>
    
  4. 对于on_findButton_clicked()槽函数,添加代码提取搜索字符串,并使用QTextEdit::find()函数在文本文件中查找该字符串。如下代码片段所示:

void TextFinder::on_findButton_clicked()
{
QString searchString = ui->lineEdit->text();
ui->textEdit->find(searchString, QTextDocument::FindWholeWords);
}

  1. 一旦这两个函数都完成了,在构造函数中添加一行调用loadTextFile()的代码,如下代码片段所示:

      TextFinder::TextFinder(QWidget *parent)
          : QWidget(parent), ui(new Ui::TextFinder)
      {
          ui->setupUi(this);
          loadTextFile();
      }
    

通过这行代码,在uic生成的ui_textfinder.h文件中会自动调用on_findButton_clicked()槽函数:

  QMetaObject::connectSlotsByName(TextFinder);

创建资源文件

你需要一个资源文件(.qrc),其中嵌入输入文本文件。输入文件可以是任何带有文本段落的.txt文件。创建一个名为input.txt的文本文件,并将其存储在textfinder文件夹中。

添加资源文件的步骤:

  1. 选择文件 > 新建文件或项目 > Qt > Qt资源文件 > 选择。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记
    打开"选择位置"对话框。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  2. 在名称字段中输入textfinder。

  3. 在路径字段中,输入C:\Qt\examples\TextFinder,然后点击下一步或继续。
    打开"项目管理"对话框。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

  4. 在"添加到项目"字段中,选择TextFinder.pro,然后点击完成或完成以在代码编辑器中打开该文件。

  5. 选择添加 > 添加前缀。

  6. 在前缀字段中,将默认前缀替换为斜杠(/)。

  7. 选择添加 > 添加文件,以定位并添加input.txt。
    C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序,QT,C/C++,c++,qt,笔记

编译和运行程序

现在你已经拥有了所有必要的文件,点击按钮来编译和运行你的程序。

参考文章

【Qt】Qt创建Qt Qt Widgets项目

用户界面开发框架Qt 6.x入门级教程 - 创建基于Qt Widget的应用(一)文章来源地址https://www.toymoban.com/news/detail-647891.html

到了这里,关于C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于C++的QT基础教程学习笔记

    文章目录: 来源 教程社区  一:QT下载安装 二:注意事项 1.在哪里写程序 2.如何看手册 3.技巧 三:常用函数 1.窗口  2.相关  3.按钮 4.信号与槽函数  5.常用栏  菜单栏  工具栏  状态栏 6.铆接部件 7.文本编辑 8.背景图 9.UI界面设计 10.常用对话框 11.实现界面的跳转 12.常用控

    2024年02月16日
    浏览(42)
  • VS基于Qt上创建项目出现红波浪线线及项目创建不了的问题,给出个人的一个解决方法供给大家参考

    (1)我电脑上的Visual studio 2015和Qt Creator这两个软件都是安装成功可以编译运行的。 我也在Visual studio 2015平台 》 工具 -》》 更新与扩展 那里下载了Qt VS Tools,路径什么的都指定好了但是同样创建不了。 (2)过一段时间这时候我又重新把Qt VS Tools卸载重新安装, 安装好之后重

    2024年02月07日
    浏览(71)
  • 创建一个简单的Qt工程

    1.打开QtCreator进行如下选择。(开软去官网下载即可,注册邮箱可以断网跳过) 第一步: 选择Application     第二步:这里文件名称和路径都不要有中文 第三步:选择编译模式 点击下一步 第四步:选择 Widget点击下一步   第五步:运行工程,判断是否创建成功 课堂小记: 1. 析

    2024年02月03日
    浏览(23)
  • 如何使用Qt创建一个新窗口?

    如何使用Qt创建一个新窗口? 在Qt中,我们可以使用QML语言轻松创建图形界面。如果需要创建一个新的窗口,我们可以使用Qt.createComponent来创建一个新组件并将其添加到主窗口中。下面是一个简单的例子。 在这个例子中,我们创建了一个主窗口,并在其中添加了一个按钮。当

    2024年02月11日
    浏览(48)
  • QT--3.创建一个简单的图形界面

    qt的移植性非常强。 1.创建一个工程 2.项目选择Application,然后选择Qt Widgets Application,最后选择choose。 注意:创建项目的名称和路径是不能有中文的!!!! 点击下一步后,就可以自动生成工程 .pro文件 点击forms,双击点击ui文件 在组件属性设计里面选择长度宽度800x600 用到的

    2024年02月03日
    浏览(44)
  • windows11下Qt6.5开发环境安装及QT for Android环境搭建(含虚拟机的创建)

    最近想升级Qt6.5及顺便配置Android开发环境。于是在网上找了各种教程,结果在配置Android开发环境都以失败告终。最终花了很长时间才搞掂。接下来分享比较好的安装方法以及安装注意事项。 建议用中科大或清华的镜像下载在线安装器,官网的很慢。链接如下: 下载在线安装

    2024年02月13日
    浏览(54)
  • qt creater11 翻译国际化教程教程:

    先出效果图。 闲聊几句:qt这个翻译很方便,能直接导出项目里所有文字。 具体步骤如下: 在Qt中,我们可以使用QTranslator类来实现多语言切换。以下是一般步骤: 1. 在你的源代码中,所有需要翻译的字符串都需要使用 `tr()` 函数包裹,例如 `tr(\\\"你好\\\")`。 2. 在项目文件 (.pr

    2024年02月10日
    浏览(30)
  • 在Qt创建的UI中放一个显示点云的窗口(PCL+QT5)

    1、首先在 Qt Designer 创建UI后,拖一个Widget窗口出来 2、在对象查看器中右击该Widget,选择 提升窗口部件 ,如下操作: 3、把UI转出来放在VS项目中,其中你的UI代码头文件会自带QVTKOpenGLNativeWidget.h,当然你的VS属性环境得配置好VTK的环境,QVTKOpenGLNativeWidget.h在VTKincludevtk-9.1路径

    2024年02月08日
    浏览(38)
  • QT基础教程之二 第一个Qt小程序

    在Qt程序中,最常用的控件之一就是按钮了,首先我们来看下如何创建一个按钮 上面代码中,一个按钮其实就是一个QPushButton类下的对象,如果只是创建出对象,是无法显示到窗口中的,所以我们需要依赖一个父窗口,也就是指定一个父亲利用setParent函数即可,如果想设置按

    2024年02月11日
    浏览(31)
  • Qt进行UDP通讯,创建一个收线程这样可以进行接收数据

    在.pro中增加一句话 绘制界面 .h文件内容: 构造函数内容 对于绑定按钮的定义函数: 接收信号的槽函数(UDP接收到数据显示) quitThreaSlot函数: 退出按钮定义: 使用的receivethread.h就是将run函数重写(循环发送定义的信号延迟即可),在定义一个信号即可。 以上即功能的所有

    2024年02月20日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包