下面我们用不同的颜色来绘制一块矩形区域,来对比学习RGB颜色。
一片漆黑的黑色
黑色在RGB中是三个颜色分量都是0。也就是没有颜色。
下面我们绘制一个水平100个像素,垂直200个像素的矩形区域,颜色设置为黑色。
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QPainter>
#include <QPoint>
#include <QPen>
#include <QColor>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
    Q_OBJECT
public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
    void paintEvent(QPaintEvent * paintEvent)
    {
        QPainter painter(this);
        QColor color(0,  0,   0);//RGB三个分量都是0,没有颜色,一片漆黑:黑色
        auto pen = QPen(color, 1);
        painter.setPen(pen);
        QPoint start_point(20, 30);
        int height = 200;
        int width = 100;
        //水平方向 x
        //垂直方向 y
        for (int x = 0; x < width; ++x) {
            for (int y = 0; y < height; ++y) {
                painter.drawPoint(start_point+QPoint(x,y));
            }
        }
    }
private:
    Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
程序输出:

RGB 红色
把上面代码中的 color 如下定义就可以显示红色:
        QColor color(255,  0,   0);//R = 255 最大值,纯红色程序输出:

RGB 绿色
把上面代码中的 color 如下定义就可以显示绿色:
        QColor color(0, 255, 0);//Green = 255 最大值,纯绿色程序输出:

RGB 蓝色
把上面代码中的 color 如下定义就可以显示蓝色:
        QColor color(0, 0, 255);//Blue = 255 最大值,纯蓝色程序输出:

RGB 白色
白色是所有分量都达到最大值的颜色,也就是白色是全部颜色都到齐了的颜色。和黑色相反。
把上面代码中的 color 如下定义就可以显示白色:




















