在 Qt 中使用 QPainter
绘制虚线,你可以通过设置画笔的样式为虚线来实现。下面是一个简单的示例代码,展示了如何用 QPainter
画虚线:
#include <QApplication>
#include <QWidget>
#include <QPainter>
class MyWidget : public QWidget {
protected:
void paintEvent(QPaintEvent *event) override {
QPainter painter(this);
// 设置画笔颜色
painter.setPen(Qt::black);
// 设置虚线样式
QPen pen(Qt::black);
pen.setStyle(Qt::DashLine); // 设置为虚线
pen.setWidth(2); // 设置线宽
painter.setPen(pen);
// 画一条虚线
painter.drawLine(10, 10, 200, 10); // 从(10, 10)到(200, 10)
}
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
MyWidget widget;
widget.resize(220, 50);
widget.show();
return app.exec();
}
在这个例子中,我们创建了一个自定义的 QWidget
子类,并重写了 paintEvent
方法。在该方法中,我们首先创建了一个 QPainter
对象,然后设置了一种黑色的虚线样式,最后绘制了一条从 (10, 10) 到 (200, 10) 的虚线。
你可以根据需要调整坐标、颜色、线宽以及其他属性,以适应你的应用场景。
内容由零声教学AI助手提供,问题来源于学员提问