我正在尝试在 QGraphicsScene
中画一条线。我知道如何在场景中添加项目,但不知道如何在使用画家绘制的场景中添加项目。下面是我要实现的代码:
void MainWindow::drawLine(){
painter->drawLine(100,10,200,20);
item = ??
scene->addItem(item);
ui->graphicsView->setScene(scene);
qDebug() << "Line Created";
}
如您所见,该项目未在上面定义。如何为它创建一个项目以便在场景中绘制它?
最佳答案
您应该继承QGraphicsItem
并覆盖paint
方法。我找到了一个很好的教程:tutorial.
请记住,在您继承的项中,您必须至少实现两个纯虚方法 paint
和 boundingRect
。通过查看 QGraphicsItem
的文档,您可以看到这些函数是纯虚拟的:QGraphicsItem.
关于c++ - qt中QGraphicsScene中的绘画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24625538/