QFontDialog Class
QFontDialog 클래스는 글꼴을 선택하기 위한 대화 상자 위젯을 제공합니다. 더 보기...
| 헤더: | #include <QFontDialog> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 상속: | QDialog |
- 상속된 멤버를 포함한 모든 멤버 목록
- QFontDialog는 표준 대화 상자( Standard Dialogs)의 일부입니다.
공개 유형
| enum | FontDialogOption { NoButtons, DontUseNativeDialog, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts } |
| flags | FontDialogOptions |
속성
- currentFont : QFont
- options : FontDialogOptions
공개 함수
| QFontDialog(QWidget *parent = nullptr) | |
| QFontDialog(const QFont &initial, QWidget *parent = nullptr) | |
| QFont | currentFont() const |
| void | open(QObject *receiver, const char *member) |
| QFontDialog::FontDialogOptions | options() const |
| QFont | selectedFont() const |
| void | setCurrentFont(const QFont &font) |
| void | setOption(QFontDialog::FontDialogOption option, bool on = true) |
| void | setOptions(QFontDialog::FontDialogOptions options) |
| bool | testOption(QFontDialog::FontDialogOption option) const |
재구현된 공용 함수
| virtual void | setVisible(bool visible) override |
신호
| void | currentFontChanged(const QFont &font) |
| void | fontSelected(const QFont &font) |
정적 공용 멤버
| 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) |
재구현된 보호된 함수
| virtual void | changeEvent(QEvent *e) override |
| virtual void | done(int result) override |
상세 설명
정적 함수 중 하나인 ` getFont()`을 통해 글꼴 대화 상자가 생성됩니다.
예시:
bool ok;
QFont font = QFontDialog::getFont(
&ok, QFont("Helvetica [Cronyx]", 10), this);
if (ok) {
// the user clicked OK and font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the initial
// value, in this case Helvetica [Cronyx], 10
}이 대화 상자는 위젯의 글꼴을 직접 설정하는 데에도 사용할 수 있습니다:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));사용자가 ‘확인’을 클릭하면 선택한 글꼴이 myWidget에 적용되며, ‘취소’를 클릭하면 원래 글꼴이 사용됩니다.

참조: QFont, QFontInfo, QFontMetrics, QColorDialog, QFileDialog 및 표준 대화 상자 예제.
멤버 유형 문서
enum QFontDialog::FontDialogOption
flags QFontDialog::FontDialogOptions
이 열거형은 글꼴 대화 상자의 모양과 느낌에 영향을 미치는 다양한 옵션을 지정합니다.
예를 들어, 표시할 글꼴 유형을 지정할 수 있습니다. 아무것도 지정하지 않으면 사용 가능한 모든 글꼴이 나열됩니다.
일부 플랫폼(예: Mac)에서는 글꼴 필터링 옵션이 지원되지 않을 수 있습니다. 비네이티브 대화 상자(Windows 또는 Linux에서 사용됨)에서는 항상 지원됩니다.
| 상수 | 값 | 설명 |
|---|---|---|
QFontDialog::NoButtons | 0x00000001 | OK 및 Cancel 버튼을 표시하지 않습니다. (“라이브 대화 상자”에 유용합니다.) |
QFontDialog::DontUseNativeDialog | 0x00000002 | Mac에서는 Apple의 네이티브 글꼴 패널 대신 Qt의 표준 글꼴 대화 상자를 사용합니다. |
QFontDialog::ScalableFonts | 0x00000004 | 크기 조정 가능한 글꼴 표시 |
QFontDialog::NonScalableFonts | 0x00000008 | 확대/축소 불가능한 글꼴 표시 |
QFontDialog::MonospacedFonts | 0x00000010 | 고정폭 글꼴 표시 |
QFontDialog::ProportionalFonts | 0x00000020 | 비례 글꼴 표시 |
FontDialogOptions 유형은 QFlags<FontDialogOption>에 대한 typedef입니다. 이 유형은 FontDialogOption 값들의 OR 조합을 저장합니다.
options, setOption() 및 testOption()도 참조하십시오 .
속성 설명서
currentFont : QFont
이 속성은 대화 상자의 현재 글꼴을 저장합니다.
액세스 함수:
| QFont | currentFont() const |
| void | setCurrentFont(const QFont &font) |
알림 신호:
| void | currentFontChanged(const QFont &font) |
options : FontDialogOptions
이 속성은 대화 상자의 모양과 느낌에 영향을 미치는 다양한 옵션을 포함합니다.
기본적으로 모든 옵션은 비활성화되어 있습니다.
옵션은 대화 상자를 표시하기 전에 설정해야 합니다. 대화 상자가 표시된 상태에서 옵션을 설정하더라도 대화 상자에 즉시 반영된다고 보장할 수 없습니다(옵션 및 플랫폼에 따라 다름).
액세스 함수:
| QFontDialog::FontDialogOptions | options() const |
| void | setOptions(QFontDialog::FontDialogOptions options) |
setOption() 및 testOption()도 참조하십시오 .
멤버 함수 문서
[explicit] QFontDialog::QFontDialog(QWidget *parent = nullptr)
표준 글꼴 대화 상자를 생성합니다.
setCurrentFont()을 사용하여 초기 글꼴 속성을 설정합니다.
parent 매개변수는 QDialog 생성자에 전달됩니다.
getFont()도 참조하십시오 .
[explicit] QFontDialog::QFontDialog(const QFont &initial, QWidget *parent = nullptr)
지정된 parent 및 initial 글꼴을 사용하여 표준 글꼴 대화 상자를 생성합니다.
[override virtual protected] void QFontDialog::changeEvent(QEvent *e)
QWidget::changeEvent(QEvent *event)를 재구현합니다.
QFont QFontDialog::currentFont() const
현재 글꼴을 반환합니다.
참고: currentFont 속성에 대한게터 함수입니다.
setCurrentFont() 및 selectedFont()도 참조하십시오 .
[signal] void QFontDialog::currentFontChanged(const QFont &font)
이 신호는 현재 글꼴이 변경될 때 발생합니다. 새로운 글꼴은 ` font`에 지정됩니다.
이 신호는 사용자가 글꼴을 선택하는 동안 발생합니다. 최종적으로 선택된 글꼴은 현재 선택된 글꼴과 다를 수 있습니다.
참고: 속성 currentFont 에 대한알림 신호입니다.
currentFont, fontSelected() 및 selectedFont()도 참조하십시오 .
[override virtual protected] void QFontDialog::done(int result)
QDialog::done(int r)을 재구현합니다.
대화 상자를 닫고 결과 코드를 ` result`로 설정합니다. 이 대화 상자가 ` exec()`를 통해 표시된 경우, `done()`은 로컬 이벤트 루프를 종료시키고, ` exec()`가 ` result`를 반환하도록 합니다.
QDialog::done()도 참조하십시오 .
[signal] void QFontDialog::fontSelected(const QFont &font)
이 신호는 글꼴이 선택되었을 때 발생합니다. 선택된 글꼴은 ` font`에 지정됩니다.
이 신호는 사용자가 최종적으로 사용할 글꼴을 선택한 경우에만 발생합니다. 사용자가 글꼴 대화 상자에서 현재 글꼴을 변경하는 동안에는 발생하지 않습니다.
selectedFont(), currentFontChanged(), currentFont도 참조하십시오 .
[static] QFont QFontDialog::getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())
모달 글꼴 대화 상자를 표시하고 글꼴을 반환합니다.
사용자가 OK 를 클릭하면 선택한 글꼴이 반환됩니다. 사용자가 Cancel 를 클릭하면 initial 글꼴이 반환됩니다.
이 대화 상자는 주어진 parent 및 options 에 지정된 옵션으로 생성됩니다. title 는 대화 상자의 창 제목으로 표시되며, initial 는 초기 선택된 글꼴입니다. ok 매개변수가 null이 아닌 경우, 사용자가 OK 를 클릭하면 해당 매개변수가 가리키는 값이 true로 설정되고, Cancel 를 클릭하면 false로 설정됩니다.
예시:
bool ok;
QFont font = QFontDialog::getFont(&ok, QFont("Times", 12), this);
if (ok) {
// font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the initial
// value, in this case Times, 12.
}이 대화 상자는 위젯의 글꼴을 직접 설정하는 데에도 사용할 수 있습니다:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));이 예제에서 사용자가 'OK'를 클릭하면 선택한 글꼴이 적용되고, '취소'를 클릭하면 원래 글꼴이 사용됩니다.
[static] QFont QFontDialog::getFont(bool *ok, QWidget *parent = nullptr)
모달 글꼴 대화 상자를 실행하고 글꼴을 반환합니다.
사용자가 ‘ OK ’을 클릭하면 선택한 글꼴이 반환됩니다. 사용자가 ‘ Cancel ’을 클릭하면 Qt 기본 글꼴이 반환됩니다.
대화 상자는 주어진 parent 를 사용하여 생성됩니다. ok 매개변수가 null이 아닌 경우, 사용자가 OK 를 클릭하면 이 매개변수가 가리키는 값이 true로 설정되고, Cancel 를 클릭하면 false로 설정됩니다.
예시:
bool ok;
QFont font = QFontDialog::getFont(&ok, this);
if (ok) {
// font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the default
// application font, QApplication::font()
}이 함수는 오버로드된 함수입니다.
void QFontDialog::open(QObject *receiver, const char *member)
대화 상자를 열고, 해당 대화 상자의 ` fontSelected()` 신호를 ` receiver ` 및 ` member`로 지정된 슬롯에 연결합니다.
대화 상자가 닫히면 해당 신호는 슬롯에서 분리됩니다.
QFont QFontDialog::selectedFont() const
사용자가 ‘ OK ’ 또는 이에 상응하는 버튼을 클릭하여 선택한 글꼴을 반환합니다.
참고: 사용자가 최종적으로 사용할 글꼴을 선택하기 전에 다른 글꼴을 선택할 수 있으므로,이 글꼴이 항상 ` currentFont ` 속성에 저장된 글꼴과 동일한 것은 아닙니다.
void QFontDialog::setCurrentFont(const QFont &font)
QFontDialog 에서 강조 표시된 글꼴을 지정된 font 로 설정합니다.
참고: currentFont 속성에 대한세터 함수입니다.
currentFont() 및 selectedFont()도 참조하십시오 .
void QFontDialog::setOption(QFontDialog::FontDialogOption option, bool on = true)
on 가 true인 경우, 지정된 option 를 활성화하고, 그렇지 않은 경우 지정된 option 를 비활성화합니다.
options 및 testOption()도 참조하십시오 .
[override virtual] void QFontDialog::setVisible(bool visible)
QDialog::setVisible(bool visible)을 재구현합니다.
bool QFontDialog::testOption(QFontDialog::FontDialogOption option) const
지정된 option 가 활성화되어 있으면 true 를 반환하고, 그렇지 않으면 false를 반환합니다.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.