写点心得吧,最近做2个Qt开发的项目,有一个客户非要界面用QML,但用了之后感觉很麻烦,qml页面和C++之间用信号传递JSON数据,虽然勉强能用,但有很多小问题,界面的用户操作体验不如widget的控件。以下是一点点开发总结:
1 程序全屏(覆盖桌面任务栏)
setGeometry(QApplication::desktop()->screenGeometry());
2 如果有数量不定的socket接收数据,那平常用的readyRead signal就不方便了,这个参考了别人关于tableWidget中cellWidget的消息处理,做法如下:
保存全部tablewidget中的cell widget控件指针到一个QList,之后每new一个控件都绑定控件相应的slot函数(同名的slot函数),在该slot函数中用sender()和QList中控件指针逐一比较就知道是哪行的控件产生的消息,多个socket的处理类似
3 安装Qt时如果不想注册,那就在安装之前禁用网卡,这样注册那一步就会有skip按钮出现,就可以skip注册,之后使用没有问题