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);
}
相关推荐
倒头就睡的小比特15 小时前
算法竞赛C++常用的STL
c++·算法
weilx123415 小时前
C++笔记-文件IO-<fcntl.h>
c++
小羊没烦恼!15 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
伞伞悦读16 小时前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
Smileyqp沛沛17 小时前
前端?C++ ?较大差异基础罗列
c++·基础·前端转c++
C语言小火车17 小时前
C/C++ 为什么需要编译器?
开发语言·c++
旖旎夜光17 小时前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
吞下星星的少年·-·18 小时前
C++ 萌新语法入门篇
c++·算法比赛
霍霍的袁18 小时前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
another heaven18 小时前
【算法/C++ MD5算法能否逆解码?原理、C++实现与同类哈希算法对比】
c++·算法·哈希算法