要实现镜像翻转,可以通过设置 QGraphicsView
中的 transform()
来实现。
在按钮点击事件处理函数中添加以下代码:
void MainWindow::on_BtnLoad_5_clicked()
{
// 获取当前选中的图形项
QGraphicsItem *item = ui->graphicsView->scene()->selectedItems().first();
// 如果没有选中任何图形项,则直接返回
if (!item) {
return;
}
// 进行水平镜像翻转
QTransform transform;
transform.scale(-1, 1);
item->setTransform(transform, true);
}
上述代码会获取当前场景中选中的第一个图形项,并对其进行水平方向的镜像翻转。如果需要垂直方向的镜像翻转,只需要将 scale()
方法参数修改为 (1, -1)
即可。
注意:如果你使用了多个图层或分组等功能,可能需要对 selectedItems()
方法返回值进行一些处理才能正确获取到当前选中的图形项。