QColorDialog类

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

【详细描述】

QColorDialog类提供一个用于指定颜色的对话框控件,功能是允许用户选择颜色。例如,您可以在绘图程序中使用此功能来采集用户选择的笔刷颜色。

静态函数getColor()显示该对话框(模态窗口),并允许用户指定一种颜色。这个函数还可以将显示通明通道ShowAlphaChannel()作为一个可选参数,让用户设置透明度。

用户可以存储 customCount() 不同的自定义颜色。自定义颜色由所有颜色对话框共享,并在程序执行过程中被记住。使用设置自定义颜色 setCustomColor() 来设置,并使用自定义颜色 customColor() 来获取。

当按下“拾取屏幕颜色”按钮时,光标会变为一个十字,屏幕上的颜色就会被扫描。用户可以通过点击鼠标来拾取。按ESC键在进入此模式前恢复最后一种颜色。


【公共类型】

enumColorDialogOption { ShowAlphaChannel, NoButtons, DontUseNativeDialog }
flagsColorDialogOptions

颜色对话框选项类型是QFlags<ColorDialogOption>的类型定义,它存储一个颜色对话框选项值的或组合。

以下是枚举指定颜色对话框外观的设定。

1.QColorDialog::ShowAlphaChannel

【值:0x00000001】

【支持透明通道选择】


 

2.QColorDialog::NoButtons 

【值:0x00000002】

【不要显示OK和取消按钮。(对“实时对话框”很有用)】
 

3.QColorDialog::DontUseNativeDialog 

【值:0x00000004】

【使用Qt的标准颜色对话框,而不是系统风格】


【属性】

  • currentColor : QColor  保存该对话框中当前选定的颜色

访问函数

QColorcurrentColor() const
voidsetCurrentColor(const QColor &color)

相关信号

voidcurrentColorChanged(const QColor &color)

此属性包含会影响对话框的外观和感觉的各种选项,默认情况下,将禁用所有选项。在显示对话框之前,需要先设置一些选项。在对话框可见时设置不能保证实时效果(取决于选项设置和所在系统)。
 

访问函数

QColorDialog::ColorDialogOptionsoptions() const
voidsetOptions(QColorDialog::ColorDialogOptions options)

【公有函数】

QColorDialog(QWidget *parent = nullptr)使用给定的父对象构造。
QColorDialog(const QColor &initial,
QWidget *parent = nullptr)
使用给定的父对象和指定的初始颜色构造。
virtual~QColorDialog()
QColor

currentColor() const

见上文属性部分。

void

open(QObject *receiver, const char *member)

打开对话框,并将其颜色选定 colorSelected() 信号连接到由接收器和成员指定的插槽。当对话框关闭时,信号将与插槽断开连接。

QColorDialog::
ColorDialogOptions

options() const

见上文属性部分。
QColor

selectedColor() const

通过单击“确定”或等效按钮,返回用户选择的颜色。
voidsetCurrentColor(const QColor &color)将一个颜色设为该对话框中当前选定的颜色。
此颜色并不总是与当前颜色属性所持有的颜色相同,因为用户可以在最终选择要使用的颜色之前选择不同的颜色。
voidsetOption(QColorDialog::ColorDialogOption option, bool on = true)如果启用为真,则设置要启用的给定选项;否则,将清除给定选项。
voidsetOptions(QColorDialog::ColorDialogOptions options)设置对话框的外观选项。
booltestOption(QColorDialog::ColorDialogOption option) const如果启用了给定的选项,则返回true;否则,将返回false。

【重实现的公有函数】

virtual void

setVisible(bool visible) override

设置对话框的可见性。如果可见为真,则显示对话框,否则为隐藏。

【信号】

voidcolorSelected(const QColor &color)用户点击OK以选择要使用的颜色之后发出该信号。
voidcurrentColorChanged(const QColor &color)当前的颜色发生变化时,发出此信号。

【静态公有成员】

QColorcustomColor(int index)
返回给定索引处的自定义颜色作为QColor值。
int

customCount()

返回QColorDialog支持的自定义颜色的数量。所有颜色对话框共享相同的自定义颜色。

QColor

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

弹出一个带有给定窗口标题的模态颜色对话框(如果没有指定,则为“选择颜色”),允许用户选择一种颜色,并返回该颜色。该颜色最初被设置为初始值。该对话框是父项的子项。如果用户取消该对话框,它将返回一个无效的颜色QColor::isValid()。

voidsetCustomColor(int index, QColor color)
将索引处的自定义颜色设置为QColor颜色值。
void

setStandardColor(int index, QColor color)

将index处的标准颜色设置为QColor颜色值。

注意:此功能不适用于macOS平台上的“本机颜色”对话框。如果您仍然需要此函数,请使用QColorDialog::DontUseNativeDialog选项。

QColorstandardColor(int index)
返回给定索引处的标准颜色作为QColor值。

【重实现的保护函数】

virtual voidchangeEvent(QEvent *e) override
virtual voiddone(int result) override

<<< 返回上一级【QDialog类】

<<< 返回根页面 

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值