
Qt 20 标准对话框 - 颜色对话框QColorDialog,输入对话框QInputDialog
发布日期:2021-05-07 13:26:08
浏览次数:23
分类:精选文章
本文共 3324 字,大约阅读时间需要 11 分钟。
颜色对话框QColorDialog
QT中提供了预定义的颜色对话框 QColorDialog类
QColorDialog类用于提供颜色的对话框部件颜色对话框使用:
//构造颜色对话框对象 并指定父窗口QColorDialog dlg(this);//设置颜色对话框的相关属性dlg.setWindowTitle("Color Editor");//设置标题dlg.setCurrenColor(Qt :: red);// 初始颜色//以模态方式打开颜色对话框if(dlg.exec() == QColorDialog :: Accepted){qDebug() << dlg.selectedColor();}
Qt 中的QColor类用来在程序中表示颜色的概念
QColor类同时支持多种颜色表示方式RGB:以 红绿蓝为基准的三色模型HSV:以 色调 饱和度 明度 为基准的 六角锥模型CMYK:以天蓝 品红 黄色 黑 为基准的全彩印刷色彩模型
输入对话框 QInputDialog
Qt中提供了预定义的输入对话框 QInputDialog类
QInputDialog类用于需要临时进行数据输入的场合输入对话框的使用
//构造输入对话框 并指定父组件QInputDialog dlg(this);//设置输入对话框的相关属性dlg.setWindowTitle("Input...");//窗口标题dlg.setLabelText("Please enter a integer:");//提示用户信息//设置当前输入对话框 输入内容类型 :/* 输入对话框的输入模式:QInputDialog :: TextInput 输入文本字符串QInputDialog :: IntInput 输入整形数QInputDialog :: DoubleInput 输入浮点数*/dlg.setInputMode(QInputDialog ::IntInput);//以模态形式使用输入对话框if(dlg.exec() == QInputDialog::Accepted){qDebug() << dlg.intValue();}
实验:
widget.h
#ifndef _WIDGET_H_#define _WIDGET_H_#include#include class Widget : public QWidget{ Q_OBJECTprivate: QPushButton ColorDialogBtn; QPushButton InputDialogBtn;private slots: void ColorDialogBtn_Clicked(); void InputDialogBtn_Clicked();public: Widget(QWidget *parent = 0); ~Widget();};
#endif
widget.cpp
#include "Widget.h"#include#include #include Widget::Widget(QWidget *parent) : QWidget(parent), ColorDialogBtn(this), InputDialogBtn(this){ ColorDialogBtn.setText("Color Dialog"); ColorDialogBtn.move(20, 20); ColorDialogBtn.resize(160, 30); InputDialogBtn.setText("Input Dialog"); InputDialogBtn.move(20, 70); InputDialogBtn.resize(160, 30); resize(200, 120); setFixedSize(200, 120); connect(&ColorDialogBtn, SIGNAL(clicked()), this, SLOT(ColorDialogBtn_Clicked())); connect(&InputDialogBtn, SIGNAL(clicked()), this, SLOT(InputDialogBtn_Clicked()));}//颜色对话框对象使用void Widget::ColorDialogBtn_Clicked(){ //创建颜色对话框对象 并 指定父窗口 QColorDialog dlg(this); //设置颜色对话框标题 dlg.setWindowTitle("Color Editor"); //设置初始颜色 //dlg.setCurrentColor(Qt::blue); //初始颜色为蓝色 dlg.setCurrentColor(QColor(100, 111, 222));//自定义颜色QColor(100, 111, 222) //以模态方式打开颜色对话框 if( dlg.exec() == QColorDialog::Accepted ) { //创建颜色对象,selectedColor()选择在对话框中选择的颜色 QColor color = dlg.selectedColor(); qDebug() << color; //rgb模型 qDebug() << color.red(); qDebug() << color.green(); qDebug() << color.blue(); //六角椎体模型 qDebug() << color.hue(); qDebug() << color.saturation(); qDebug() << color.value(); }}void Widget::InputDialogBtn_Clicked(){ //构造输入对话框 并指定父组件 QInputDialog dlg(this); //设置输入对话框的相关属性 dlg.setWindowTitle("Input Test");//窗口标题 dlg.setLabelText("Please input an integer:");//提示用户信息 //输入对话框的输入模式 字符串 dlg.setInputMode(QInputDialog::TextInput); //dlg.setInputMode(QInputDialog::IntInput ); //dlg.setIntMinimum(0); //dlg.setIntMaximum(255); //以模态形式使用输入对话框 if( dlg.exec() == QInputDialog::Accepted ) { qDebug() << dlg.textValue();//返回输入的字符串 //qDebug() << dlg.intValue();//返回输入的整形 }}Widget::~Widget(){ }
main.cpp
#include#include "Widget.h"int main(int argc, char *argv[]){ QApplication a(argc, argv); Widget w; w.show(); return a.exec();}
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2025年03月29日 22时58分28秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
410 分割数组的最大值(二分查找、动态规划)
2021-05-07
875 爱吃香蕉的珂珂(二分查找)
2021-05-07
450 删除二叉搜索树中的节点(递归删除节点)
2021-05-07
桌面图标的自动排列图标
2021-05-07
第十一届蓝桥杯python组第二场省赛-数字三角形
2021-05-07
数字三角形的无返回值的深度优先搜索解法
2021-05-07
完全背包问题的简化思路
2021-05-07
Jquery添加元素
2021-05-07
Jquery使用需要下载的文件
2021-05-07
Spring中如何传递参数的问题
2021-05-07
BST中某一层的所有节点(宽度优先搜索)
2021-05-07
广度优先搜索
2021-05-07
猜字母
2021-05-07
Linux网络环境配置(设置ip地址)
2021-05-07
Idea使用Spring Initializr来快速创建springboot项目
2021-05-07
C++邻接表存储图的深度优先搜索
2021-05-07
Dijkstra算法的总结
2021-05-07
前后端通信问题 —— SpringBoot+LayUI
2021-05-07
ubuntu中安装scikit-learn
2021-05-07