QColorDialog Class

QColorDialog クラスは、色を指定するためのダイアログ・ウィジェットを提供します。詳細...

ヘッダ #include <QColorDialog>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
継承: QDialog

パブリックタイプ

enum ColorDialogOption { ShowAlphaChannel, NoButtons, NoEyeDropperButton, DontUseNativeDialog }
flags ColorDialogOptions

プロパティ

パブリック関数

QColorDialog(QWidget *parent = nullptr)
QColorDialog(const QColor &initial, QWidget *parent = nullptr)
virtual ~QColorDialog()
QColor currentColor() const
void open(QObject *receiver, const char *member)
QColorDialog::ColorDialogOptions options() const
QColor selectedColor() const
void setCurrentColor(const QColor &color)
void setOption(QColorDialog::ColorDialogOption option, bool on = true)
void setOptions(QColorDialog::ColorDialogOptions options)
bool testOption(QColorDialog::ColorDialogOption option) const

再実装パブリック関数

virtual void setVisible(bool visible) override

シグナル

void colorSelected(const QColor &color)
void currentColorChanged(const QColor &color)

静的パブリックメンバ

QColor customColor(int index)
int customCount()
QColor getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())
void setCustomColor(int index, QColor color)
void setStandardColor(int index, QColor color)
QColor standardColor(int index)

再実装された保護された関数

virtual void changeEvent(QEvent *e) override
virtual void done(int result) override

詳しい説明

カラーダイアログの機能は、ユーザーが色を選択できるようにすることです。例えば、ユーザーがブラシの色を設定できるようにするために、描画プログラムでこれを使用することができます。

静的関数はモーダルカラーダイアログを提供します。

静的関数getColor() はダイアログを表示し、ユーザに色を指定させます。この関数は、ユーザに透明度のある色を選択させるために使用することもできます:ShowAlphaChannel オプションを追加引数として渡してください。

ユーザはcustomCount() に異なるカスタム・カラーを保存することができます。カスタム・カラーはすべてのカラー・ダイアログで共有され、プログラムの実行中に記憶されます。カスタム・カラーを設定するにはsetCustomColor() を使用し、取得するにはcustomColor() を使用します。

Pick Screen Color "ボタンを押すと、カーソルがヘアクロスに変わり、スクリーン上の色がスキャンされる。ユーザーはマウスをクリックするか、Enterボタンをクリックすることで、1つを選ぶことができる。Escapeを押すと、このモードに入る前に最後に選択された色に戻ります。

標準ダイアログの例では、Qtの他の組み込みダイアログと同様にQColorDialogを使用する方法を示しています。

A color dialog in the Fusion widget style.

QColor,QFileDialog,QFontDialog,Standard Dialogs Exampleも参照してください

メンバ型ドキュメント

enum QColorDialog::ColorDialogOption
flags QColorDialog::ColorDialogOptions

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

定数説明
QColorDialog::ShowAlphaChannel0x00000001ユーザーが色のアルファ成分を選択できるようにします。
QColorDialog::NoButtons0x00000002OKCancel ボタンを表示しない。(「ライブダイアログ」のために有用)
QColorDialog::NoEyeDropperButton0x00000008Eye Dropper ボタンを非表示にします。この値は Qt 6.6 で追加されました。
QColorDialog::DontUseNativeDialog0x00000004オペレーティング・システム・ネイティブのカラー・ダイアログの代わりに、Qtの標準のカラー・ダイアログを使用します。

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

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

プロパティ・ドキュメント

currentColor : QColor

このプロパティは、ダイアログで現在選択されている色を保持します。

アクセス関数

QColor currentColor() const
void setCurrentColor(const QColor &color)

通知シグナル

void currentColorChanged(const QColor &color)

options : ColorDialogOptions

このプロパティは、ダイアログのルック&フィールに影響を与える様々なオプションを保持します。

デフォルトでは、すべてのオプションは無効になっています。

オプションはダイアログを表示する前に設定する必要があります。ダイアログが表示されている間にオプションを設定しても、ダイアログに即座に反映されるとは限りません(オプションやプラットフォームによって異なります)。

アクセス関数:

QColorDialog::ColorDialogOptions options() const
void setOptions(QColorDialog::ColorDialogOptions options)

setOption() およびtestOption()も参照

メンバ関数ドキュメント

[explicit] QColorDialog::QColorDialog(QWidget *parent = nullptr)

与えられたparent でカラーダイアログを作成します。

[explicit] QColorDialog::QColorDialog(const QColor &initial, QWidget *parent = nullptr)

与えられたparent 、指定されたinitial カラーダイアログを構築します。

[virtual noexcept] QColorDialog::~QColorDialog()

カラーダイアログを破棄する。

[override virtual protected] void QColorDialog::changeEvent(QEvent *e)

再実装:QWidget::changeEvent(QEvent *event)。

[signal] void QColorDialog::colorSelected(const QColor &color)

このシグナルは、ユーザーがOK をクリックして使用する色を選択した直後に発せられる。選択された色はcolor で指定される。

colorおよびcurrentColorChanged()も参照してください

[signal] void QColorDialog::currentColorChanged(const QColor &color)

このシグナルは、ダイアログの現在の色が変わるたびに発せられます。現在の色はcolor で指定されます。

注: プロパティcurrentColor に対するノーティファイアシグナル。

colorおよびcolorSelected()も参照してください

[static] QColor QColorDialog::customColor(int index)

与えられたindex のカスタムカラーをQColor の値として返します。

setCustomColor()も参照

[static] int QColorDialog::customCount()

QColorDialog でサポートされているカスタムカラーの数を返します。すべてのカラーダイアログは同じカスタムカラーを共有します。

[override virtual protected] void QColorDialog::done(int result)

再インプリメント:QDialog::done(int r)。

ダイアログを閉じ、その結果コードをresult に設定する。 このダイアログがexec() で表示されている場合、done() はローカル・イベント・ループを終了させ、exec() はresult を返す。

QDialog::done()も参照してください

[static] QColor QColorDialog::getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())

モーダルカラーダイアログを、与えられたウィンドウtitle (何も指定されていない場合は "Select Color")でポップアップし、ユーザーに色を選択させ、その色を返します。initialこのダイアログはparent の子ダイアログです。 ユーザーがダイアログをキャンセルした場合、無効な色(QColor::isValid() を参照)を返します。

options 引数を指定すると、ダイアログをカスタマイズできます。

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

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

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

QColor QColorDialog::selectedColor() const

ユーザーがOK または同等のボタンをクリックして選択した色を返します。

注意: この色は、currentColor プロパティが保持する色と必ずしも同じではありません。

[static] void QColorDialog::setCustomColor(int index, QColor color)

index のカスタムカラーをQColor color の値に設定します。

注意: この関数はmacOSプラットフォームのネイティブカラーダイアログには適用されません。それでもこの機能が必要な場合は、QColorDialog::DontUseNativeDialog オプションを使用してください。

customColor()も参照してください

void QColorDialog::setOption(QColorDialog::ColorDialogOption option, bool on = true)

on が true の場合、与えられたoption を有効にする。そうでない場合、与えられたoption をクリアする。

options およびtestOption()も参照のこと

[static] void QColorDialog::setStandardColor(int index, QColor color)

index の標準色をQColor color の値に設定します。

注意: この関数はmacOSプラットフォームのネイティブカラーダイアログには適用されません。それでもこの機能が必要な場合は、QColorDialog::DontUseNativeDialog オプションを使用してください。

standardColor()も参照

[override virtual] void QColorDialog::setVisible(bool visible)

再インプリメント:QDialog::setVisible(bool visible).

ダイアログの可視性を変更します。visible が真ならダイアログは表示され、そうでなければ非表示になります。

[static] QColor QColorDialog::standardColor(int index)

与えられたindex における標準色をQColor の値として返す。

setStandardColor()も参照

bool QColorDialog::testOption(QColorDialog::ColorDialogOption option) const

与えられたoption が有効であればtrue を返し、そうでなければ false を返す。

options およびsetOption()も参照

© 2025 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.