如果使用了QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);后,1080P分辨率界面变大了,可能是因为开启了高DPI缩放,导致界面在高分辨率下进行了缩放。\n\n要解决这个问题,可以尝试以下几种方法:\n\n1. 使用QGuiApplication::setAttribute(Qt::AA_DisableHighDpiScaling);来禁用高DPI缩放。这将会关闭高DPI缩放功能,使界面在高分辨率下不再缩放。\n\n2. 在应用程序的主窗口中,使用setFixedSize()方法来设置固定的窗口大小。这样可以确保窗口不会随着分辨率的改变而缩放。\n\n3. 使用QScreen类获取当前屏幕的物理像素密度,并根据比例因子来调整界面的大小。例如:\n\ncpp\nQScreen *screen = QGuiApplication::primaryScreen();\nQRect screenGeometry = screen->geometry();\nqreal scaleFactor = screen->devicePixelRatio();\nint width = screenGeometry.width() / scaleFactor;\nint height = screenGeometry.height() / scaleFactor;\n\n\n然后,根据widthheight来设置界面的大小。\n\n4. 如果你的界面是使用Qt Designer设计的,可以在.ui文件中设置devicePixelRatio属性,将其设置为1.0,以禁用高DPI缩放。打开.ui文件,在属性编辑器中选择"Form",然后在"Window"部分找到"devicePixelRatio"属性,将其值设置为1.0。\n\n这些方法中的任何一种都可以尝试解决界面变大的问题。选择适合你的情况的方法进行尝试。

Qt 1080P 分辨率界面变大:解决 `AA_EnableHighDpiScaling` 问题

原文地址: https://www.cveoy.top/t/topic/pX2v 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录