应该有不少人遇到过这种情况,在Qt5或PyQt5的设计师界面中拖拽控件编辑文本内容后,再运行就会出现显示不全的问题,如下图所示:
可以看到添加的按钮和Label控件在设计界面上显示是正常的,但是运行后就显示不完全了。虽然这种问题可以通过手动拉大控件或者采用布局来解决,但总归是很麻烦的。后来在网上找了发现原来是Qt不能自适应高清屏幕的原因,现在很多电脑都是至少1080高清的屏幕了,所以为了桌面图标适应电脑屏幕,显示设置中通常会推荐放大到150%。但是Qt并没有适配,所以会出现上述问题。
1、Qt中的解决方法就是在程序入口出加一行代码,注意要加在第一行,习惯每次新建项目后都加上行了,比自己一个个放大方便多了。再次运行就是正常显示的啦!
int main(int argc, char *argv[])
{//对于按钮文字显示不全的解决方法,必须放在main中的第一行QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);QApplication a(argc, argv);Widget w;w.show();return a.exec();
}
2、PyQt的方法呢,我看网上也是在程序入口中加一行代码,但是我试了并没有显示正常,不知是何原因。
QCoreApplication.setAttribute(Qt.AA_EnableHighDpiScaling)
3、还有一种方法就是把电脑的显示设置中的缩放和布局改为100%,不过这样做效果并没有很好,还影响其它功能的使用,不推荐!
本文链接:https://my.lmcjl.com/post/7941.html
展开阅读全文
4 评论