windows - Qt 跨平台 Windows & Mac : Font size

标签 windows macos qt fonts cross-platform

我正在使用 Qt 框架在 Windows 和 OS X 上开发应用程序。
问题是我已经手动设置了一些小部件的字体大小(在 ui 设计器中)。
在windows下,字体完美,但在osx上,它们太大了。
事实上,字体系列会被转换(MS Shell Dlg 2 到 Lucida Grande),但字体大小不会被转换,如果它们是手动设置的话。

所以我决定减小代码中的字体大小,使用一些#ifdef,例如:

#ifdef Q_OS_MAC
QFont font = ui->button->font();
font.setPixelSize(12);
ui->button->setFont(font);
#endif

它可以工作,但是当你有很多小部件时它会有点烦人,所以我愿意接受任何其他想法。

我也有一个 qtextedit 有这个问题,这个解决方案不起作用,因为它是需要调整的 html 代码。

谢谢

最佳答案

你可以试试style sheetapplication 中全局设置, 或一个 widget (及其潜艇)一次。像这样的东西:

#ifdef Q_OS_MAC
window->setStyleSheet("QWidget{font-size:12px}");
#endif

关于windows - Qt 跨平台 Windows & Mac : Font size,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11640843/

相关文章:

c++ - QDockWidgets 合并不正确

linux - 如何在 Linux 上创建 Windows 兼容的 rar sfx 存档

node.js - 无法在Windows上npm安装react-native

vb.net - 如何检查输入的日期应该大于 vb.net 中的系统日期

java - 使用 Mac 应用程序查找 Java 8

c++ - 如何在 QPushButton 中自动调整文本?

c++ - 删除一行后留下空行

c - fwrite() 性能下降

swift - NSPersistentDocument、Swift、macOS 和 Storyboard — 如何获取 ManagedObjectContext?

在 OS X 和 Windows 下工作的数据库引擎