qt c++设置QFont字体大小
时间: 2024-12-17 12:55:49 浏览: 27
在Qt C++中,你可以使用`QFont`类来设置文本的字体样式,包括大小。下面是如何设置字体大小的基本步骤:
1. 创建`QFont`对象:
```cpp
QFont font;
```
2. 设置字体大小(单位通常是像素点px,也可以是pt或其他单位):
```cpp
font.setPixelSize(12); // 设置12像素大小
// 或者
font.setPointSizeF(14); // 设置14点大小(适用于更精确的非整数值)
```
3. 如果你想动态地应用这个字体,比如给一个`QLabel`对象设置字体:
```cpp
QLabel *label = new QLabel("Hello");
label->setFont(font);
```
4. 对于全局更改,你还可以使用`setFontFamily()`来设置字体名称,然后调用`setFont()`设置大小:
```cpp
font.setFamily(QStringLiteral("Arial")); // 设置字体为Arial
font.setPixelSize(16);
setApplicationFont(font); // 应用到整个应用程序
```
5. 如果需要在运行时动态改变字体大小,可以获取控件的`fontMetrics()`,然后基于新的大小调整布局:
```cpp
QFontMetrics metrics(label->font());
int heightForText = metrics.height() + label->margin().top() + label->margin().bottom();
label->setGeometry(QRect(0, 0, ... /* 宽度 */, heightForText));
```
记得在Qt的生命周期结束前释放`QFont`对象,避免内存泄漏。
阅读全文