QPainter就是手裏的作圖工具,只需要三洋東西:筆(顏色,寬度,樣式),字體(寫字),刷子(大面積作畫)
設置筆和字體以後,就可以寫字了:
void MainWindow::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event);
QPainter painter(this);
// 設置畫筆顏色
painter.setPen(QColor(0, 160, 230));
// 設置字體:微軟雅黑、點大小50、斜體
QFont font;
font.setFamily("Microsoft YaHei");
font.setPointSize(50);
font.setItalic(true);
painter.setFont(font);
// 繪製文本
painter.drawText(rect(), Qt::AlignCenter, "Qt");
}
設置筆的顏色後,就可以畫線了
void MainWindow::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event);
QPainter painter(this);
// 反走樣
painter.setRenderHint(QPainter::Antialiasing, true);
// 設置畫筆顏色
painter.setPen(QColor(0, 160, 230));
// 繪製直線
painter.drawLine(QPointF(0, height()), QPointF(width() / 2, height() / 2));
}
設置筆(用於邊框)和畫刷(用於大面積)後,就可以繪製整塊的面積
void MainWindow::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event);
QPainter painter(this);
// 反走樣
painter.setRenderHint(QPainter::Antialiasing, true);
// 設置畫筆顏色、寬度
painter.setPen(QPen(QColor(0, 160, 230), 2));
// 設置畫刷顏色
painter.setBrush(QColor(255, 160, 90));
painter.drawRect(50, 50, 160, 100);
}