抱歉,我之前给出的代码有误。QList 类中的 takeAt
方法会返回一个指针,所以不需要使用 delete
关键字。以下是修改后的代码示例:
void WhiteBoard::mouseMoveEvent(QMouseEvent *event)
{
if (event->buttons() & Qt::LeftButton) {
// 绘制画笔路径逻辑
update();
}
if (event->buttons() & Qt::RightButton) {
if (currentPathIndex >= 0 && currentPathIndex < paths.size()) {
// 删除当前路径
paths.takeAt(currentPathIndex);
pathPens.takeAt(currentPathIndex);
redoPaths.clear();
redopathPens.clear();
--currentPathIndex;
update();
}
}
}
感谢您指出错误,并再次为此带来的困扰向您道歉!如果还有其他问题,请随时提问。
内容由零声教学AI助手提供,问题来源于学员提问