![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Qt+VS2019界面开发学习
文章平均质量分 54
zeal_for_rov
电子,海洋
展开
-
在Qt中使用EtherCAT-SOEM的初始化中,状态机卡在PreOp->Save-Op过程中,出现State=0x12, Error=0x001e错误的解决办法
1.在调试EtherCAT软件过程中,一直出现配置从站进不了Save_op状态,通过下函数检查从站状态: //使用的从站编号为1 只有1个从站 ec_slave[1].state = EC_STATE_SAFE_OP; ec_writestate(1); //设置到安全模式 ec_statecheck(1, EC_STATE_SAFE_OP, EC_TIMEOUTSTATE * 4); printf("Slave %d State=0x%2.2x StatusCode=0x%4原创 2021-12-15 10:35:04 · 4614 阅读 · 12 评论 -
C++使用引用的主要原因
原则部分内容参考于《C++Primer Plus 6》第八章使用引用参数的主要原因有两个: 1.能够修改调用函数中的数据对象,因为引用与原对象指向地址的同一个内容,引用可看作是别名。 2.通过传递引用而不是整个数据对象,可以提高程序的运行速度,因为传值需要复制拷贝整个数据内容,而引用指向原来的数据内容,只是传递了一个别名。当数据较大(结构或类对象),传递引用以提高程序运行速度显得很重要,在此情况下,合理使用指针参数同样可以提高运行速度。那么何时使用引用;指针或按值...原创 2021-12-07 17:31:01 · 1378 阅读 · 0 评论 -
Qt5.13.1版本下SerialPort的信号槽&QSerialPort::readyRead 不触发或触发有问题的解决办法
上周想测试写qt的串口功能,搭建了界面,编写了串口收发测试测函数,结果发现,qt串口接收,或者发送遇到问题。主要是两个问题。1.使用qt的串口发送数据,数据只发送了一次的问题。2.使用虚拟串口给qt串口发数据,无法触发readyRead信号,从而无法触发槽函数的问题。这两个问题花了一些时间解决,网上搜索发现是Qt5.13.1的Bug。通过这篇文章,找到了解决办法,经过测试,发现可行。如何使Qt5.13.1的QSerialPort工作? | 经验摘录 (1r1g.com)如下图是我...原创 2021-12-06 10:06:23 · 6964 阅读 · 6 评论 -
Qt中 QSpinBox控件绑定valueChanged后,出现信号多次响应问题的记录
在使用Qt VS2019编程过 ,有一个功能需要使用QSpinBox控件。在窗体的类中,声明了:void on_spinBox_valueChanged(int val); 并在.cpp中实现该函数功能如下所示:void MyFormClass::on_spinBox_valueChanged(int val){ ui.spinBox->setEnabled(false); dataCount = ui.spinBox->value();//获取当...原创 2021-11-15 17:44:36 · 5364 阅读 · 2 评论 -
Qt 在StackWidget中嵌入单独的子界面,切换界面浮动。
1.在主UI界面中有一个QStackWidget,主Ui为Form1,继承自QMainWindow,子Ui为Form2,继承自QWidget。2.实现功能,在Form1中点击按钮,使得Form2能显示在Form1中的QStackWidget容器中,且能调整Form2从容器中浮动出来。3.方法:a.在Form1的头文件中定义 Form2的对象指针Form2 *form2= nullprt;b.在Form1中添加显示的响应按钮事件: form2 = new Form2();...原创 2021-11-10 14:23:36 · 2439 阅读 · 0 评论