系列文章目录
QT串口助手开发文章1
一、UI设计
首先需要创建QT程序
创建QT程序的时候,记得点下创建页面,基类选择成Dialog,点击Forms文件夹下面的ui文件便可以绘制ui图形了
1.1combo Box(下拉框)
1.1.1下拉框固定用法(ui方式)
在页面绘制一个combo Box,ctrl + r(快捷键)运行
需要学习快捷键用法参考博客
发现这个下拉框选择不了子选项,因为没有添加子选项
关掉运行的结果,双击下拉框,便可以编辑下拉框了
点击加号按钮就可以给下拉框添加子选项了,添加完点击ok
再次运行ctrl + r,下拉框就可以选择子选项了
这种方式不灵活添加完后,只能有你设置的固定选项
1.1.1下拉框代码方式
代码方式是灵活动态调整Com box(下拉框)
点击下拉框,红框标出的是Objectname就是控件(Combo box就是控件之一)的名字也就是控件的ID,可以更改它的命名为CboxSerialPort(直接编辑值就可以了)
该列表框属于ui的一部分,所以可以更改.cpp文件即通过代码方式来灵活设置下拉框的子选项
CBoxSerialPort是之前设置的Combo box
addItem是增加子选项
出现c++承载,函数名相同,函数的参数不同(在同一个函数名下面实现不同的效果功能),输入不同的参数会调用对应参数的函数
第一个函数的参数Qstring(字符串),把字符串增加进去作为子选项
等于号是默认参数的意思
比如在这里只传一个参数,COM0,后面的参数就默认等于后面函数自带第二个参数的默认值
第二个函数参数icon是图标+字符串一起增加子选项
我们使用第一个函数,ctrl + b 编译然后ctrl + r运行下看效果
运行效果,5678也有了,证明这样的方法是直接增加没有覆盖掉之前的ui方式添加的端口
二、响应combo box
点击了COM1,怎么知道我点击的是COM1
如:
按钮的响应(push button)
点击右键转到槽,里面有个clicked参数,clicked是个信号,当点击这个按钮的时候,clicked信号发出,对应槽函数响应该信号,从而完成对应的动作,比如关闭对话框
记得把pushbutton再右键删掉
同理combo box
右键点击我们之前创建的combo box 转到槽,选择currentIndexChanged(qstring)(我们用的串口助手,选择不同端口就会修改索引,由于端口是字符串所以选择这个我红框所框的)
点击ok直接切换到dialog.cpp文件中对应的槽函数
参数&argl就是currentIndexChanged所携带的参数就是串口号(字符串)
展示该字符串需要在ui里面加入一个label用来显示我们刚才选择的串口号,并且直接点击label修改为待选,修改其id名
set text设置标签,标签是arg1(串口号),然后编译ctrl +b 运行ctrl +r
运行效果
点击COM1标签变为COM1,当我们点击COM1的时候,发出信号,这个信号是currentIndexChanged当前索引被修改,并且该信号会携带字符串,这个字符串就是你选择的COM1,从槽传进去,COM1传进去,设置标签显示
三、串口的使用
点击帮助文档找QSerialPort,就显示QserialPort这个类,里面很多函数,我们只需要设置端口号,所以找set函数,设置端口名,数据位,波特率,校验位,停止位
下一节书写串口的具体写法
END