Qt5学习笔记之串口助手一:基本界面设计
这里写目录标题
- 概述
- 界面基本元素
- 添加串口参数
- 添加串口号
概述
从这一篇文章开始,跟着视频实现一个串口助手。当然,这里实现的串口功能比较简单,只有最基础的串口参数设置、发送、接收。在之后的拓展学习中,我们再实现一个具备完整功能的串口助手,如增加时间戳、周期发送、16进制/ASCII发送等。
Qt的三驾马车:串口编程、网络编程、操作GPIO。
界面基本元素
1.添加接收框、发送框、个人广告框、串口通信参数选择框。
2.添加操作按钮、广告框中的文本(图片)框、参数含义提示。使用组建Label、Push Button即可
3.对组件进行基本调整和设置,如字体居中等,在之前的QQ登录界面都有提到。需要注意的是,取消接收框的输入权限。
4.对界面进行布局。需要注意的是选择Group Box,设置最小高度,防止布局后“自制串口助手”无法显示。这一点在之前设置图片时同样有提到。
添加串口参数
1.双击Combo Box组件,在弹出的对话框中点击“+”号,然后输入我们需要的内容。多次添加即可。添加完后选择OK。
2.选择其中一项,通过上下箭头,即可设置顺序和默认参数。
3.编译查看效果。如果界面的串口通信参数不对齐,则可以通过打破布局,选中这几个Combo Box和Label,然后选择栅格布局即可。
4.另一种设置默认参数的方式:
添加串口号
1.修改组件名称。在工程文件中添加串口相关内容。
2.添加获取串口端号代码,并在响应的Combo Box组件中显示。
3.编译测试,发现报错。查找发现是上面的代码写丢了一对小括号。正确应为
foreach(const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) { //小括号写丢了serialNamePort<<info.portName();}
Qt5学习笔记之串口助手一:基本界面设计相关推荐
- Qt5学习笔记之串口助手四:增加16进制/ASCII切换、周期发送
目录 1. 概述 2. 16进制/ASCII发送 2.1 功能实现 2.2 界面修改 3. 接收框显示发送内容 3.1 以16进制/ASCII显示 3.1.1 界面修改 3.1.2 功能实现 3.2 ...
- Qt5学习笔记之串口助手三:打包成Windows软件
这里写目录标题 添加图标 打包程序 测试打包好的软件 添加图标 图标的获取可以参考我的另一篇文章:Qt5学习笔记之图标下载和转换,这里只记录下Qt中使用图标的方法. 1.切换到release模式下进行 ...
- Qt5学习笔记之串口助手二:发送接收实现
这里写目录标题 一级目录 显示接收内容 实现发送功能 一级目录 1.定义一个串口端口的对象并实例化 2.打开按钮自动关联槽函数 #include 显示接收内容 需要手动关联槽函数 查看应该使用的信号 ...
- Python学习笔记--exe文件打包与UI界面设计
exe文件打包与UI界面设计 前言 一.基于tkinter实现的UI设计 1.1 库的选择及思路 1.2 定位方法的选用 1.3 Frame控件 1.4 变量设置 1.5 批量设置 1.6 Text文 ...
- Qt5学习笔记之QString的使用
目录 概述 2.QString字符串的操作 2.1 拼接 2.2 裁剪 2.3 转换为int型 2.4 int转换为QString 2.5 小写字母大写字母转换 2.6 转换为16进制 概述 学习过程 ...
- KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记3——串口Stdio实现
KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记3--串口Stdio实现 一.介绍 任务目标 二.工程创建 三.软件设计 第一步,BSP构建 1, 添加前面的pll_config文件 2 ...
- stm32学习笔记----双串口同时打开时的printf()问题
stm32学习笔记----双串口同时打开时的printf()问题 最近因为要使用串口2外接PN532芯片实现通信,另一方面,要使用串口1来将一些提示信息输出到上位机,于是重定义了printf(),使其 ...
- Qt5学习笔记之零碎问题记录
目录 概述 1.qDebug输出问题 1.1 qDebug() << "OK"报错 1.2 qDebug打印QString类型 2.QString字符串的操作 3.修改 ...
- 【K210】K210学习笔记五——串口通信
[K210]K210学习笔记五--串口通信 前言 K210如何进行串口通信 K210串口配置 K210串口发送相关定义 K210串口接收相关定义 K210串口发送接收测试 完整源码 前言 本人大四学生 ...
最新文章
- PyTorch官方教程大更新:增加标签索引,更加新手友好
- 谈谈我对Manacher算法的理解
- C++ Virtual详解
- python3.0内建函数大全_python3内置函数大全
- MATLAB从入门到精通:基本矩阵运算-矩阵的基本方法和函数
- OpenCV相交凸intersectConvex的实例(附完整代码)
- CRM呼叫中心toolbar的cancel按钮会导致session清理
- java springmvc权限校验_详解Spring MVC使用Filter实现登录及权限验证判断
- mikechen详谈架构师成长之3大步骤
- linux 状态码的意义,HTTP状态码是什么?常见的状态码描述都有什么?
- python3 random模块_Python3 中 random模块
- 如何实现红帽企业虚拟化管理平台Host主机所在数据中心的切换
- ConcurrentHashMap 实现细节(转)
- Python制作彩色二维码
- 你真的了解企业虚拟化吗?
- monkey命令_Monkey 稳定性测试
- FileNet unfile sql
- 报错:Vue.js not detected
- 刷题方法(五步刷题法)
- win10电脑耳机插上突然没音(已解决)
热门文章
- mysql中如何创建数据库_Mysql 中如何创建数据库和数据表
- java创建项目出现怎么办_maven创建项目后main/java missing的解决方法
- html捉虫游戏,街机游戏
- vue 引入外部less_Vue项目中引入外部文件的方法(css、js、less)
- python response重头开始_用 Python 抓取公号文章保存成 PDF
- 用R语言绘制动态地图,代码奉上!(REmap包详解)
- 1到100的偶数之和是多少_什么白酒适合收藏,收藏多久出手,茅台五粮液老酒价格是多少?...
- reactor线程模型_面试一文搞定JAVA的网络IO模型
- Ubuntu ROS Kinect2安装
- 防止网线中的信号衰减很重要