标签:
1. 颜色对话框:QColorDialog
(1)QColorDialog类
①Qt中提供了预定义的颜色对话框类(QColorDialog)
②QColorDialog类用于提供指定颜色的对话框部件
③颜色对话框的使用方式(见后面的实例)
④QColorDialog中的实用函数:QColorDialog::getColor
(2)QColor类:用来表示颜色的概念,同时支持多种的颜色表示方式
①RGB:以红、绿、蓝为基准的三色模型
②HSV:以色调、饱和度、明度为基准的六角锥体模型
③CMYK:以天蓝、品红、黄色、黑色为基准的全彩印刷色彩模型
2. 输入对话框:QInputDialog
(1)Qt中提供了预定义的输入对话框类(QInputDialog)
(2)QInputDialog类用于需要临时进行数据输入的场合
(3)输入对话框的使用方式(见后面的实例分析)
(4)输入对话框的输入模式
①QInputDialog::TextInput ——输入文本字符串
②QInputDialog::IntInput ——输入整形数
③QInputDialog::DoubleInput——输入浮点数
(5)QInputDialog中的实用函数
①QInputDialog::getDouble
②QInputDialog::getInt
③QInputDialog::getItem
④QInputDialog::getText
【编程实验】颜色对话框和输入对话框使用实例
//main.cpp
#include <QApplication> #include "Widget.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); Widget w; w.show(); return a.exec(); }
//Widget.h
#ifndef _WIDGET_H_ #define _WIDGET_H_ #include <QWidget> #include <QPushButton> class Widget : public QWidget { Q_OBJECT private: QPushButton ColorDialogBtn; QPushButton InputDialogBtn; private slots: void ColorDialogBtn_Clicked(); void InputDialogBtn_Clicked(); public: Widget(QWidget* parent = 0); ~Widget(); }; #endif //_WIDGET_H_
//Widget.cpp
#include "Widget.h" #include <QColorDialog> #include <QInputDialog> #include <QDebug> 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(&InputDialogBtn, SIGNAL(clicked()), this, SLOT(InputDialogBtn_Clicked())); connect(&ColorDialogBtn, SIGNAL(clicked()), this, SLOT(ColorDialogBtn_Clicked())); } void Widget::ColorDialogBtn_Clicked() { QColorDialog dlg(this); dlg.setWindowTitle("Color Editor"); dlg.setCurrentColor(QColor(100, 111, 222)); if(dlg.exec() == QColorDialog::Accepted) { QColor color = dlg.selectedColor(); qDebug() << color; qDebug() <<"red: " << color.red(); qDebug() <<"green:" << color.green(); qDebug() <<"blue: " << color.blue(); qDebug() <<"hue: " << color.hue(); qDebug() <<"saturation:" << color.saturation(); qDebug() <<"value: " << color.value(); } } void Widget::InputDialogBtn_Clicked() { QInputDialog dlg(this); dlg.setWindowTitle("Input Test"); dlg.setLabelText("Please input an integer:"); dlg.setInputMode(QInputDialog::IntInput); if(dlg.exec() == QInputDialog::Accepted) { qDebug() << dlg.intValue(); } } Widget::~Widget() { }
3. 小结
(1)QColorDialog类用于提供指定颜色的对话框部件
(2)QColor类用来在程序中表示颜色的概念
(3)QInputDialog类用于需要临时进行数据输入的场合
标签:
原文地址:http://www.cnblogs.com/5iedu/p/5451054.html