在 Qt GUI 应用程序中,我制作了一个包含表格的对话框。当我双击表格中的一行时,我想要:
要显示的弹出窗口;
根据该行从数据库中获取点数据;
在弹出窗口上绘制这些点。
我已经完成了database.cpp中点数据的获取功能。但根据规则,绘图函数必须在 dialog.cpp 中,在 void Dialog::paintEvent(QPaintEvent *event) 函数中。我可以在那个 database.cpp 数据获取函数中执行绘图函数 lineTo() 吗?
在 Qt GUI 应用程序中,我制作了一个包含表格的对话框。当我双击表格中的一行时,我想要:
要显示的弹出窗口;
根据该行从数据库中获取点数据;
在弹出窗口上绘制这些点。
我已经完成了database.cpp中点数据的获取功能。但根据规则,绘图函数必须在 dialog.cpp 中,在 void Dialog::paintEvent(QPaintEvent *event) 函数中。我可以在那个 database.cpp 数据获取函数中执行绘图函数 lineTo() 吗?
您可以QPixmap
从任何地方绘制 a,并将该像素图传递给弹出对话框以在 a 内显示或由函数QLabel
绘制。paintEvent
您还可以使用QPolygonF
哪个具有更清晰可扩展的优点。
查看那篇文章(Qt Quaterly)中的函数,然后使用generatePixmap
将像素图分配给标签。QLabel::setPixmap