Qt bug

1、Qt5.2.1不支持QQuickwidget来承载qml

2、Qt5.12以及以上,不支持跨线程调用数据库连接

3、线程A不断产生sql语句,需要让两个数据库分别执行这个sql语句。所以在线程A中建立两个子线程B和C,分别对应两个数据库。然后发现两个线程同时启动【即两个线程同时调Qt访问mysql的dll】会报错:

 

 解决:https://www.cnblogs.com/judes/p/7305953.html

4、Qt5.2.1使用QSetting,打印allkeys,找不到section

 

 

 

 setction:没有CFG,使用的时候就找不到对应的value

解决:不要section

 

5、Qt5.6以上无法使用QWebView,只能使用webenginewidgets相关套件【安装Qt的时候勾选上】,然而webenginewidgets只支持MSVC编译器,所以无法跨平台。

所以想使用Qt5.6以上的Migw来加载本地HTML,貌似Qt无法实现

6、新建A工程,界面里新建label控件,再新建B工程,把A工程的界面复制过来,将B工程中的label控件提升为带有QSS的控件【如呼吸灯】,此时QSS不会生效,删除了再重新建label、提升就可以了

 综上,如果希望Qt支持QQuickWidget来承载qml【5.3以上】,希望能使用QWebView来加载本地HTML文件【5.6以下】,希望能跨线程调用数据库对象QSqlDateBase【5.12以下】,选择Qt5.5是最优选择

7、环境为Qt5.10.1,网络编程,将一个端口设置为tcp服务器监听后,或者设置为UDP端口bind后,再设置为tcp客户端去bind,然后connectToHost,就会失败。【有时候失败有时候不失败,但大多时候失败,网上无相关说明】

 

 

8、QML Canvas焦点切换,画的东西消失

https://www.cnblogs.com/judes/p/14095098.html

 

9、QStackedWidget界面切换,程序崩溃或无响应

Qt5.6.1,分辨率为1600x1200,切换QStackedWidget->setCurrentIndex,打印切换成功,但是界面卡死,分辨率换回来ok,版本换为1920x1080是正常的。

猜测跟界面刷新有关,尝试主动刷新【update、repaint】也不行

posted @ 2019-10-22 17:16  朱小勇  阅读(437)  评论(0编辑  收藏  举报