Qt在开发pc端应用程序时,无法自适应桌面分辨率,比如常用的win10电脑是1920x1080这种屏幕,而mac是2k屏,2560x1440,在windows上开发的软件放到macbook或者其它高分屏的屏幕时,Qt UI就会变形,控件的大小和图标就会拉伸缩放,Qt作为跨平台应用开发框架,如果连自适应屏幕都做不到,那真是有点难堪了,其它的界面框架,例如WPF, ImGUI对高分屏是自适应的是框架自己完成的。
其实,Qt还是有方法可以做到自适应屏幕。
先来看一个概念 logicalDotsPerInch
Qt助手的解释:
This property holds the number of logical dots or pixels per inch. This value can be used to convert font point sizes to pixel sizes. This is a convenience property that’s simply the average of the logicalDotsPerInchX and logicalDotsPerInchY properties.
译文:
此属性保存每英寸逻辑点或像素的数量,此值可用于将字体点大小转换为像素大小。这是一个方便的属性,它只是logicalDotsPerInchX和logicalDotsPerInchY属性的平均值。
写代码试试看,当前是1920 * 1080, 125%缩放