QFontDialog Class

QFontDialog クラスは、フォントを選択するためのダイアログ・ウィジェットを提供します。詳細...

Header: #include <QFontDialog>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Inherits: QDialog

パブリックタイプ

enum FontDialogOption { NoButtons, DontUseNativeDialog, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts }
flags 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()));

ユーザーがOKをクリックすると、選択したフォントがmyWidgetに使用され、キャンセルをクリックすると、元のフォントが使用されます。

A font dialog in the Fusion widget style.

QFont,QFontInfo,QFontMetrics,QColorDialog,QFileDialog,標準ダイアログの例も参照してください

メンバ型ドキュメント

enum QFontDialog::FontDialogOption
flags QFontDialog::FontDialogOptions

この enum は、フォントダイアログのルック&フィールに影響するさまざまなオプションを指定します。

例えば、どの種類のフォントを表示するかを指定することができます。何も指定しない場合は、利用可能なすべてのフォントがリストされます。

フォントフィルタリングオプションは、プラットフォームによっては対応していない場合があることに注意してください(Macなど)。これらは、非ネイティブダイアログ(WindowsやLinuxで使用)で常にサポートされています。

定数説明
QFontDialog::NoButtons0x00000001OKCancel ボタンを表示しません。(「ライブダイアログ」に便利です)。
QFontDialog::DontUseNativeDialog0x00000002Mac で Apple のネイティブ・フォント・パネルの代わりに Qt の標準フォント・ダイアログを使用します。
QFontDialog::ScalableFonts0x00000004スケーラブルフォントを表示
QFontDialog::NonScalableFonts0x00000008スケーラブルでないフォントを表示する
QFontDialog::MonospacedFonts0x00000010等幅フォントを表示する
QFontDialog::ProportionalFonts0x00000020プロポーショナル・フォントを表示する

FontDialogOptions 型はQFlags<FontDialogOption> の typedef です。これは、FontDialogOption 値の OR の組み合わせを格納します。

options,setOption(),testOption()も参照のこと

プロパティ Documentation

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 に対するノーティファイア・シグナル。

currentFontfontSelected()、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をクリックすると、選択したフォントが使用され、キャンセルをクリックすると、元のフォントが使用されます。

警告 ダイアログの実行中にparent を削除しないでください。これを行いたい場合は、QFontDialog コンストラクタのいずれかを使用してダイアログを自分で作成する必要があります。

[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()
}

警告: 警告: ダイアログの実行中にparent を削除しないでください。これを行いたい場合は、QFontDialog コンストラクタのいずれかを使用してダイアログを自分で作成する必要があります。

void QFontDialog::open(QObject *receiver, const char *member)

ダイアログを開き、そのfontSelected() シグナルをreceivermember で指定されたスロットに接続します。

このシグナルは、ダイアログが閉じられるとスロットから切断されます。

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 が真の場合、与えられた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 を返す。

options およびsetOption()も参照して ください。

©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。