Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在Qt应用程序中动态更改字体?_C++_Qt - Fatal编程技术网

C++ 如何在Qt应用程序中动态更改字体?

C++ 如何在Qt应用程序中动态更改字体?,c++,qt,C++,Qt,我有一个Qt5.5应用程序,里面有很多小部件。每个小部件都有用于绘制文本的自身字体系列。其中一些在QSS文件中定义,一些直接设置为QPaint 应用程序对某些语言进行了本地化。对于其中一种语言,我应该动态更改所有小部件的字体系列(所有小部件都应该有一个字体系列),并恢复对其他语言的更改。您可以使用QApplication::setFont()一次为多个小部件设置默认字体,您可以使用它为所有内容设置默认字体,或者为特定的小部件类设置它,如果您将该类作为secont参数传递。请注意,这不能与样式表同

我有一个Qt5.5应用程序,里面有很多小部件。每个小部件都有用于绘制文本的自身字体系列。其中一些在QSS文件中定义,一些直接设置为QPaint


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

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


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

QApplication::setFont如何?可能需要重新启动应用程序。否则-使用样式表。