QColorDialog 类
QColorDialog 类提供了一个对话框小部件,用于指定颜色。更多信息...
头文件 | #include <QColorDialog> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake | QT += widgets |
继承 | QDialog |
- 包括继承成员在内的所有成员列表
- QColorDialog 是标准对话框的一部分。标准对话框.
公有类型
枚举 | ColorDialogOption { ShowAlphaChannel, NoButtons, NoEyeDropperButton, DontUseNativeDialog } |
标志 | ColorDialogOptions |
属性
- currentColor : QColor
- options : ColorDialogOptions
公有函数
QColorDialog(QWidget *parent = nullptr) | |
QColorDialog(const QColor &initial, QWidget *parent = nullptr) | |
虚拟 | ~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 |
重覆公有函数
虚拟 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) |
重实现受保护的函数
虚拟 void | changeEvent(QEvent *e) override |
虚拟 void | done(int result) override |
详细信息
颜色对话框的函数允许用户选择颜色。例如,您可以在绘图程序中使用它来允许用户设置画笔颜色。
静态函数提供模态颜色对话框。
静态 getColor() 函数显示对话框,并允许用户指定颜色。此函数还可以用于让用户以一定的不透明度选择颜色:将 ShowAlphaChannel 选项作为附加参数传递。
用户可以存储 customCount() 个不同的自定义颜色。这些自定义颜色由所有颜色对话框共享,且在程序执行期间保留。使用 setCustomColor() 设置自定义颜色,使用 customColor() 获取它们。
当按下“拾取屏幕颜色”按钮时,光标变为箭头形状,并对屏幕上的颜色进行扫描。用户可以点击鼠标或Enter按钮来选择颜色。按下Escape恢复到进入此模式之前选择的最后一个颜色。
标准对话框 示例展示了如何使用 QColorDialog 以及其他内建 Qt 对话框。
另请参阅 QColor,QFileDialog,QFontDialog,以及 标准对话框示例。
成员类型文档
枚举 QColorDialog::ColorDialogOption
标志 QColorDialog::ColorDialogOptions
该枚举指定影响颜色对话框外观和感觉的各种选项。
常量 | 值 | 描述 |
---|---|---|
QColorDialog::ShowAlphaChannel | 0x00000001 | 允许用户选择颜色的alpha分量。 |
QColorDialog::NoButtons | 0x00000002 | 不显示确定和取消按钮。(对“实时对话框”很有用。) |
QColorDialog::NoEyeDropperButton | 0x00000008 | 隐藏吸管按钮。此值在Qt 6.6中添加。 |
QColorDialog::DontUseNativeDialog | 0x00000004 | 使用Qt的标准颜色对话框而不是操作系统原生颜色对话框。 |
ColorDialogOptions 类型是 QFlags<ColorDialogOption> 的异构化。它存储了 ColorDialogOption 值的逻辑或组合。
另请参阅 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。
成员函数文档
[显式]
QColorDialog::QColorDialog(QWidget *parent = nullptr)
以给定的 parent 构造颜色对话框。
[显式]
QColorDialog::QColorDialog(const QColor &initial, QWidget *parent = nullptr)
以给定的 parent 和指定的 initial 颜色构造颜色对话框。
[虚 效果无副作用]
QColorDialog::~QColorDialog()
销毁颜色对话框。
[重写 虚 纯保护]
void QColorDialog::changeEvent(QEvent *e)
重新实现: QWidget::changeEvent(QEvent *event).
[信号]
void QColorDialog::colorSelected(const QColor &color)
在用户点击 OK 选中颜色后发出此信号。所选颜色由 color 指定。
另请参阅color 和 currentColorChanged。
[信号]
void QColorDialog::currentColorChanged(const QColor &color)
每当对话框中当前颜色改变时发出此信号。当前颜色由 color 指定。
注意:属性 currentColor 的通知信号。
另请参阅color 和 colorSelected。
[静态]
QColor QColorDialog::customColor(int index)
以 QColor 值返回给定 index 的自定义颜色。
另请参阅setCustomColor。
[静态]
int QColorDialog::customCount()
返回 QColorDialog 支持 QColorDialog 的自定义颜色数量。所有颜色对话框共享相同的自定义颜色。
[重写 虚 纯保护]
void QColorDialog::done(int result)
重新实现: QDialog::done(int r).
关闭对话框并将其实际结果代码设置为 result。如果使用 exec() 显示此对话框,则 done() 会结束本地事件循环,并导致 exec() 返回 result。
另请参阅QDialog::done。
[静态]
QColor QColorDialog::getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())
弹出带有指定窗口 标题(如果未指定,则为“选择颜色”)的模态颜色对话框,让用户选择一种颜色,并返回该颜色。颜色初始设置为 initial。对话框是 parent 的子项。如果用户取消对话框,则返回无效(见 QColor::isValid())的颜色。
options 参数允许您自定义对话框。
void QColorDialog::open(QObject *receiver, const char *member)
打开对话框并连接其 colorSelected() 信号到由 receiver 和 member 指定的槽。
当对话框关闭时,将从槽中断开信号。
QColor QColorDialog::selectedColor() const
返回用户通过单击 OK 或等效按钮所选的颜色。
注意: 此颜色不一定与 currentColor 属性保持一致,因为用户可以在最终选择要使用的颜色之前选择不同的颜色。
[静态]
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。
[静态]
void QColorDialog::setStandardColor(int index, QColor color)
将索引为 index 的标准颜色设置为 QColor color 值。
注意: 此函数不适用于 macOS 平台上的原生颜色对话框。如果仍需要此功能,请使用 QColorDialog::DontUseNativeDialog 选项。
另请参阅 standardColor。
[覆盖虚函数]
void QColorDialog::setVisible(bool visible)
重新实现: QDialog::setVisible(bool visible).
更改对话框的可见性。如果 visible 为 true,则显示对话框;否则,隐藏对话框。
[静态]
QColor QColorDialog::standardColor(int index)
返回给定 索引 的标准颜色作为 QColor 值。
另请参阅setStandardColor。
bool QColorDialog::testOption(QColorDialog::ColorDialogOption option) const
如果给定的 选项 已启用,则返回 true
;否则,返回 false。
© 2024 The Qt Company Ltd. 本文档中的贡献版权属于各自的拥有者。此处提供的文档是根据自由软件基金会发布的 GNU自由文档许可协议第1.3版 的条款授权的。Qt 和相应的商标是芬兰 The Qt Company Ltd. 和/或全球其他国家的商标。所有其他商标均为其各自所有者的财产。