最近一直在看关于Qt开发库的东西,研究了一些基本使用,写了一个关于绘制颜色渐变的小程序,现在共同和大家分享
声明一下,我是在linux下面用eclipse+CDT+qt开发的,感觉非常的好:-)
下面是PaintWidget.h头文件的声明
1
#ifndef PAINTWIDGET_H_
2
#define PAINTWIDGET_H_
3
#include <QWidget>
4
#include <QPainter>
5
class PaintWidget:public QWidget
6
{
7
public:
8
PaintWidget(QWidget *parent=0);
9
protected:
10
void paintEvent(QPaintEvent *event);
11
};
12
13
#endif /* PAINTWIDGET_H_ */

2

3

4

5

6

7

8

9

10

11

12

13

PaintWidget.cpp文件
1
#include "PaintWidget.h"
2
3
PaintWidget::PaintWidget(QWidget *parent):QWidget(parent)
4
{
5
6
}
7
void PaintWidget::paintEvent(QPaintEvent */*event*/)
8
{
9
QPainter pt(this);
10
QColor color(0x00,0x00,0x00);
11
for (int i=0;i<256;i++)
12
{
13
for (int j=0;j<256;j++)
14
{
15
color.setRgb(0xff,i,j,0xff);
16
pt.setPen(color);
17
pt.drawPoint(20+i,20+j);
18
color.setRgb(i,0xff,j,0xff);
19
pt.setPen(color);
20
pt.drawPoint(296+i,20+j);
21
color.setRgb(j,i,0xff,0xff);
22
pt.setPen(color);
23
pt.drawPoint(572+i,20+j);
24
}
25
}

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26}
1
/*
2
*
3
*
4
* Created on: 2008-11-13
5
* Author: zhanweisun
6
*/
7
#include <QApplication>
8
#include "PaintWidget.h"
9
int main(int argc, char *argv[])
10
{
11
QApplication a(argc, argv);
12
PaintWidget widget;
13
widget.show();
14
return a.exec();
15
}
16

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16
