【QT】QFont字体设置

设置字体大小

cpp 复制代码
f.setPointSize(12); // 设置字体大小为12点

设置字体加粗

cpp 复制代码
f.setBold(true); // 使字体加粗

设置字体斜体

cpp 复制代码
f.setItalic(true); // 使字体斜体

设置字体下划线

cpp 复制代码
f.setUnderline(true); // 给字体添加下划线

设置字体删除线

cpp 复制代码
f.setStrikeOut(true); // 给字体添加删除线

示例:创建并应用字体

cpp 复制代码
QFont f;
f.setFamily("Times New Roman"); // 设置字体族
f.setPointSize(12);            // 设置字体大小
f.setBold(true);               // 设置字体为加粗

应用字体到QLabel或其他控件

cpp 复制代码
QLabel *label = new QLabel("Hello, World!");
label->setFont(f);

获取字体宽高

cpp 复制代码
GraphicsSimpleTextItem* textItem = new QGraphicsSimpleTextItem;
QFont font = textItem->font();
font.setPointSize(14);
textItem->setFont(font);

// 获取字体宽高
QFontMetrics metrics(font);
int fontHeight = metrics.height();
int fontWidth = metrics.width(QString::number(0.04 * 100) + "%");
  • 获取宽度函数原型

    cpp 复制代码
    int width(const QString &, int len = -1) const;
    int width(const QString &, int len, int flags) const;
    int width(QChar) const;
相关推荐
Hazenix4 分钟前
Go 指南:一篇文章速通 Golang
开发语言·后端·golang
灯澜忆梦7 分钟前
GO_复合类型---指针
开发语言·后端·golang
Ulyanov12 分钟前
雷达导引头Python仿真框架:GPU加速、6-DOF模型与半实物仿真接口
开发语言·python·雷达信号处理·雷达导引头
名字还没想好☜1 小时前
Go slice 的 append 陷阱:共享底层数组导致的数据串改
开发语言·后端·golang·go·slice
bitbrowser1 小时前
Claude 账号频繁被封?转向国内可直接使用的 AI 工具
开发语言·php
An_s2 小时前
机器学习python之识别图中物品信息
java·linux·开发语言
小雪_Snow2 小时前
JavaScript 中的三种常用事件
开发语言·前端·javascript
米罗篮2 小时前
矩阵快速幂 (Exponentiation By Squaring Applied To Matrices)
c++·线性代数·算法·矩阵
肖爱Kun2 小时前
C++设计策略模式
开发语言·c++·策略模式
灯澜忆梦2 小时前
GO_面向对象_方法
开发语言·golang