我要用qt制作画图板 以下是关于其中铅笔的操作 void Pen::paint(QPainter &paint) { paint.setPen(QPen(color, width)); paint.setBrush(Qt::white); paint.drawLine(start, end); } if (shapeType == type_Pen) { Shape *zero = new Pen; zero->set_start(QPoint(0, 0)); zero->set_end(QPoint(0, 0)); stack.push(zero); }//Pen 制造间隔点 void Shape::set_pos(QPoint p1, QPoint p2, bool is_straight) { start = p1; int dis; if (is_straight) { if (abs(p1.rx() - p2.rx()) < abs(p1.ry() - p2.ry())) dis = abs(p1.rx() - p2.rx()); else dis = abs(p1.ry() - p2.ry()); if (p1.rx() - p2.rx() > 0) p2.setX(p1.rx() - dis); else p2.setX(p1.rx() + dis); if(p1.ry() - p2.ry() > 0) p2.setY(p1.ry() - dis); else p2.setY(p1.ry() + dis); } end = p2; } QPoint Shape::get_end() { return end; } QPoint Shape::get_start() { return start; } QColor Shape::get_color() { return color; } QColor Shape::get_brush() { return brush; } int Shape::get_width() { return width; } void Shape::set(QColor c1, QColor c2, int w) { color = c1; brush = c2; width = w; } 错哪了
时间: 2024-04-19 21:30:06 浏览: 153
QT中绘图学习,画笔QPainter,画刷QBrush,类型颜色宽度的设置;高级设置,抗锯齿、移动画家;画家画图片
根据您提供的代码,目前我没有看到明显的错误。但是,根据代码片段的上下文,可能存在以下问题:
1. 您是否在其他地方定义了 `type_Pen`?如果没有定义,那么在 `shapeType == type_Pen` 的条件语句中将无法正常工作。
2. 在 `Shape` 类中没有找到 `set_start` 和 `set_end` 函数的实现。这可能会导致在运行时出现错误。
请确保您的代码中没有其他问题,并提供更多上下文信息以便更好地理解和排除错误。
阅读全文