发布时间:2024-01-27 17:00
第一个嵌入式QT应用程序
在成功安装Qt Creator开发环境后,我们通过一个简单的嵌入式Qt应用程序,来说明一下如何构建和编译一个Qt界面应用程序。
关于如何安装并构建Qt Creator开发环境,请参考以下内容:
目标:了解Qt Creator如何构建和编译工程,如何把应用程序放到开发板运行。
功能:通过点击触摸屏上的按钮,实现不同的显示效果。
我们把第一个Qt应用程序放在ubuntu系统的/opt/work/qt-application/first_app目录下。
1、打开Qt Creator开发环境,点击“New Project”,在弹出的对话框中,选择“Application”->“Qt Widgets Application”,点击“Choose...”。
图片1.png (137.33 KB, 下载次数: 1)
2019-4-27 10:31 上传
2、点击“Choose...”后,在弹出的对话框中,设置项目名称和项目的保存路径,笔者把项目保存在ubuntu系统的/opt/work/qt-application/first_app目录下,然后点击“下一步”,如下图所示:
图片2.png (53.44 KB, 下载次数: 1)
2019-4-27 10:31 上传
3、在弹出的对话框中,选择构建套件,工具链选择“imx6ul-toolchain”,我们目前在debug环境下调试,因此,去除“Release”和“Profile”选项,再点击“下一步”。
图片3.png (59.72 KB, 下载次数: 1)
2019-4-27 10:31 上传
4、在弹出的对话框中,我们选择构建界面的基类,我们选择“QWidget”作为基类,类名,头文件,源文件,界面文件这些属性,可以重命名,笔者选择默认。
然后点击“下一步”。(关于“QWidget”和“QMainWindow”的区别,可自行上网查询,这里不作详细描述。)
图片4.png (53.56 KB, 下载次数: 1)
2019-4-27 10:31 上传
5、在弹出的对话框中,选择版本控制软件,目前笔者没有进行版本控制,选择“None”,最后点击“完成”。Qt工程构建完毕。
图片5.png (53.82 KB, 下载次数: 1)
2019-4-27 10:31 上传
6、工程创建完成后,开发界面如下图所示。关于Qt的具体编程细节,本手册不作描述。本手册的所有源码均公开,源码含有适当的注释以辅助阅读,开发者可作学习参考。
图片6.png (91.29 KB, 下载次数: 1)
2019-4-27 10:31 上传
7、双击打开widget.ui文件,设计一个简单的Qt界面,含有一个文本显示控件和三个按钮,点击不同的按钮,会在文本显示框内显示不同内容。
图片7.png (182.75 KB, 下载次数: 1)
2019-4-27 10:31 上传
8、双击打开widget.cpp文件,完成代码编辑,如下图所示。
图片8.png (129.86 KB, 下载次数: 1)
2019-4-27 10:31 上传
9、点击左下角的构建按钮,完成工程构建。工程构建完成后,生成的可执行文件存放在ubuntu系统的/opt/work/qt-application/first_app/build-first_app-imx6ul_toolchain-Debug目录。
执行以下命令,把可执行文件复制到ubuntu系统与开发板的共享目录。
cp build-first_app-imx6ul_toolchain-Debug/first_app /opt/work/qt-images/ -a
图片9.png (52.33 KB, 下载次数: 1)
2019-4-27 10:31 上传
在开发板的命令行终端,执行以下命令,把可执行文件复制到开发板的/opt/qt-application目录。
cp /mnt/ubuntu-nfs/qt-images/first_app /opt/qt-application -a
执行以下命令,运行可执行程序
cd /opt/qt-application
./first_app -qws
图片10.png (39.22 KB, 下载次数: 1)
2019-4-27 10:31 上传
11、可执行程序在开发板里运行的界面,如下图所示,点击不同的按钮,文本显示窗口有不同的显示内容。
图片11.png (1.06 MB, 下载次数: 1)
2019-4-27 10:31 上传
2019-4-27 10:35 上传
点击文件名下载附件
对标GPT-3、AlphaFold,智源研究院发布超大规模智能模型系统“悟道1.0”
Flutter 小技巧之 ListView 和 PageView 的各种花式嵌套
深度学习-视频行为识别:论文阅读——双流网络(Two-stream convolutional networks for action recognition in videos)
人工智能轨道交通行业周刊-第3期(2022.6.20-6.26)
流批一体开源项目ChunJun技术公开课——ChunJun同步Hive事务表
基于OneDNS实现减少网站广告骚扰和恶意攻击,守护上网安全
Deep Neural Networks for Learning Graph Representations——paper 笔记