Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Chinese
  4. 有关Qt4.8的高DPI适配的问题
Forum Updated to NodeBB v4.3 + New Features

有关Qt4.8的高DPI适配的问题

Scheduled Pinned Locked Moved Unsolved Chinese
1 Posts 1 Posters 789 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    szx0427
    wrote on last edited by szx0427
    #1

    Qt4.8好像完全不支持高DPI识别。我的电脑是125%缩放(120DPI),我用Qt Creator设计的界面,在我看来大小正好,很协调,但是放到其他人的100%缩放的显示器上,就会显得很大,甚至占满大半个屏幕。这说明Qt完全没有根据DPI来调整UI元素的大小,而只是按照死板的像素值来绘制UI。这个问题已经困扰我较长时间。我不升级到Qt5,是因为qt5静态编译出现莫名其妙的问题,不要跟我说升级哈,谢谢。

    但是,当我偶然发现WPS也是Qt4写的之后,我很震惊。因为它对高DPI的支持近乎完美。不光主程序是这样,就连“配置工具”也是。下面是一张对比图片:
    对比图
    (为了在100%的缩放下效果好一些,我故意将我的程序的UI元素设计的很小,但不影响对比)

    可以看出,同样是Qt4写出的程序,我的程序显然不支持高DPI,无论什么样的DPI都是一样的绘制方式,需要系统缩放才能在高DPI显示器上放大;而WPS的配置工具显然具有高DPI自适配的功能,它依靠自己识别DPI而绘制出的窗口及其元素的大小,和系统缩放的几乎相同,而且更加清晰。这就说明,WPS软件在DPI不同的显示器下,显示效果几乎相同,都很完美。

    我的问题是,如何让我的程序也做到这一点呢?恳请各位大佬前来帮助,万分感谢。

    1 Reply Last reply
    0

    • Login

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Get Qt Extensions
    • Unsolved