c++ - 如何动态更改 Qt 应用程序中的字体?

标签 c++ qt

我有 qt 5.5 应用程序,其中有很多小部件。每个小部件都有用于绘制文本的自字体系列。其中一些在QSS文件中定义,一些直接设置到QPainter中。

应用程序具有某些语言的本地化功能。对于其中一种语言,我应该动态更改所有小部件的字体系列(所有小部件应具有一种字体系列)并恢复其他语言的更改。

最佳答案

您可以使用QApplication::setFont()一次为多个小部件设置默认字体,您可以使用它为所有部件设置默认字体,也可以为特定部件设置默认字体。小部件类,如果您将该类作为第二个参数传递。请注意,这不能与样式表同时使用。

如果您想为某个特定小部件设置默认字体,也可以使用该小部件的 setFont() 函数。请注意,如果您要为其设置字体的小部件还附加了样式表,则在属性冲突的情况下,将使用样式表中的值。

关于c++ - 如何动态更改 Qt 应用程序中的字体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32689368/

相关文章:

c++ - C++:有关使用Stroustrup示例的移动构造函数/赋值的问题

c++ - Qt - 从对象数组启动 5 个线程时出错

c++ - QMediaPlayer - 即时修改音频

c++ - Qt例子: no mutex lock when reading,为什么?

Qt StyleSheet 系统正在使 QPalette 失效;如何让他们一起工作?

c++ - 无法弄清楚为什么我的 if 语句不起作用 : ( if array[i] << average)

c++什么是段错误的好调试器?

c++ - clang 格式在 gVim 下不工作

c++ - omp_set_max_active_levels() 和函数调用

c++ - Qt中的图像转换器,彩色图像转黑白