Qt应用开发(基础篇) 您所在的位置:网站首页 qt控件颜色 Qt应用开发(基础篇)

Qt应用开发(基础篇)

2024-01-04 22:05| 来源: 网络整理| 查看: 265

一、前言

        QColorDialog类继承于QDialog,是一个设计用来选择颜色的对话框部件。

        对话框窗口 QDialog

        QColorDialog颜色选择器一般用来让用户选择颜色,比如画图工具中选择画笔的颜色、刷子的颜色等。你可以使用静态函数QColorDialog::getColor()直接显示对话框,然后重新选择颜色,还能选择具有透明度的颜色,选择的颜色保存在函数返回的一个QColor类型的返回值。

        用户通过预设的颜色表格选择颜色,或者通过输入RGB值选择,或者通过鼠标在触屏上滑动寻找想要的颜色。按下Enter键触发确认,按下ESC键触发退出。

QColorDialog *cdia = new QColorDialog(this); cdia->setWindowTitle("my color dialog"); cdia->setCurrentColor(QColor("red")); cdia->exec();

         或者:

QColorDialog::getColor(QColor("red"), this, "my color dialog", QColorDialog::DontUseNativeDialog);

 

 二、QColorDialog类 1、currentColor

        该属性表示当前在对话框中选择的颜色。

QColor currentColor() const void setCurrentColor(const QColor &color) 2、options

        该属性表示外观的一些显示策略,默认没有策略。如果需要的话,需要在显示之前设置此策略。

QColorDialog::ColorDialogOptions options() const void setOptions(QColorDialog::ColorDialogOptions options) QColorDialog::ColorDialogOption描述ShowAlphaChannel允许用户选择颜色的alpha分量。NoButtons不要显示OK和Cancel按钮。DontUseNativeDialog使用Qt的标准颜色对话框,而不是操作系统自带的颜色对话框。

        在linux下颜色对话框样式为:

        设置DontUseNativeDialog|ShowAlphaChannel之后会恢复成标准对话框,并且多了一个alpha通道数值的输入。

 3、公共函数  1)open

        打开对话框,并且连接colorSelected信号绑定的槽,当对话框关闭的时候,这个信号槽连接会被断开。

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

示例:打开的同时绑定colorSelected信号的作用槽函数,控制台输出选择的颜色RGB。

public slots: void onColorSelected(const QColor &color); void MainWindow::onColorSelected(const QColor &color) { qDebug()setWindowTitle("my color dialog"); dia->setCurrentColor(QColor("red")); dia->setOptions(QColorDialog::DontUseNativeDialog | QColorDialog::ShowAlphaChannel); dia->open(this,SLOT(onColorSelected(const QColor &))); 2)setOption

        单独设置某一项显示策略的使能,参考上文options。

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

        返回某一项显示策略的使能,对应上文setOption。

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

        返回当前选择的颜色。

QColor selectedColor() const 4、静态公共函数 1)customColor

        返回自定义颜色的索引对应的颜色。

QColor customColor(int index) 2)setCustomColor

        设置自定义颜色每个索引对应的颜色。

void setCustomColor(int index, QColor color) 3)standardColor

        返回标准颜色的索引对应的颜色。

QColor standardColor(int index) 4)setStandardColor

        设置标准颜色的索引对应的颜色

void setStandardColor(int index, QColor color) 5)customCount

        返回自定义颜色的数量。

int customCount() 6)getColor

        使用模式状态打开对话框,默认给定颜色initial为白色可修改,还可传入窗口标题title和颜色对话框显示策略options。

QColor getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions()) 5、信号 1)colorSelected

        用户按下ok之后或者确认之后触发该信号。

void colorSelected(const QColor &color)  2)currentColorChanged

        当窗口的颜色发生变化就会触发该信号。

void currentColorChanged(const QColor &color)


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有