Qt窗口控件之字体对话框QFontDialog

字体对话框QFontDialog

QFontDialog 是 Qt 内置的字体对话框,用户能够在这里选择字体的样式、大小,设置加粗和下划线并将结果作为返回值返回。QFontDialog 最好使用其提供的静态函数实例化匿名对象,并获取返回值最为用户选择字体设置的结果。

函数声明:

cpp 复制代码
QFont getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())

QFont getFont(bool *ok, QWidget *parent = nullptr)

getFont() 的成员函数有两个重载。

ok 布尔值是用于判断用户是点击了确定还是取消了字体设置。

initial 是字体对话框开启时的默认字体样式选择。

使用QFontDialog设置字体并获取返回结果

cpp 复制代码
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QFontDialog>
#include <QDebug>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_clicked()
{
    bool flag;
    QFont font = QFontDialog::getFont(&flag,QFont("新宋体",25));

    qDebug()<<"字体:"<<font.family();
    qDebug()<<"字号:"<<font.pointSize();
    qDebug()<<"是否加粗:"<<font.bold();
    qDebug()<<"是否斜体:"<<font.italic();

    ui->pushButton->setFont(font);
}
相关推荐
superman超哥12 分钟前
Context与任务上下文传递:Rust异步编程的信息高速公路
开发语言·rust·编程语言·context与任务上下文传递·rust异步编程
橘颂TA13 分钟前
【剑斩OFFER】算法的暴力美学——leetCode 946 题:验证栈序列
c++·算法·leetcode·职场和发展·结构与算法
步达硬件14 分钟前
【Matlab】批量自定义图像处理
开发语言·matlab
闻缺陷则喜何志丹15 分钟前
【状态机动态规划】3686. 稳定子序列的数量|1969
c++·算法·动态规划·力扣·状态机动态规划
军军君0115 分钟前
Three.js基础功能学习七:加载器与管理器
开发语言·前端·javascript·学习·3d·threejs·三维
liulilittle17 分钟前
OPENPPP2 网络驱动模式
开发语言·网络·c++·网络协议·信息与通信·通信
mjhcsp21 分钟前
C++ AC 自动机:原理、实现与应用全解析
java·开发语言·c++·ac 自动机
huihuihuanhuan.xin22 分钟前
后端八股之java并发编程
java·开发语言
寻星探路26 分钟前
【算法通关】双指针技巧深度解析:从基础到巅峰(Java 最优解)
java·开发语言·人工智能·python·算法·ai·指针
崇山峻岭之间28 分钟前
Matlab学习记录32
开发语言·学习·matlab