QT5基本对话框 标准颜色对话框
实现的效果如下图所示:
新建一个Qt Widget Application,项目名为:myDialog,基类选择QDialog,类名保持Dialog不变,取消“创建界面”复选框的选中状态。
创建步骤:
1)在Dialog.h中添加private成员变量。
//设置一个pushbutton
QPushBtn *colorBtn;
//设置一个颜色框架
QFrame *colorFrame;
2)在dialog.cpp的构造函数中添加代码如下:
//标准颜色对话框
colorBtn = new QPushButton;
//设置button的文本
colorBtn->setText(QString::fromLocal8Bit("颜色标准对话框实例"));
colorFrame = new QFrame;
//设置框架的类型为Box
colorFrame->setFrameShape(QFrame::Box);
//设置是否自动填充
colorFrame->setAutoFillBackground(true);
//设置关联,当colorBtn点击时触发槽函数showColor
connect(colorBtn,SIGNAL(clicked()),this,SLOT(showColor()));
3)槽函数showColor()的实现如下:
void Dialog::showColor()
{
//指定选定的颜色
QColor c = QColorDialog::getColor(Qt::blue);//静态方法,默认为蓝色,括号中的参数为默认颜色
//判断用户选择的颜色是否有效
if(c.isValid())
{
colorFrame->setPalette(QPalette(c));//设置调色板
}
}4)选择button,显示的效果如下:
5)选择一个颜色,点击OK,显示的效果如下所示: