Qt等待用户在QGraphicsScene中选择项目

Qt wait for user to select items in QGraphicsScene

本文关键字:选择 项目 QGraphicsScene 等待 用户 Qt      更新时间:2023-10-16

我的ui中有2个QGraphicsScene s和QGraphicsView s。在这些QGraphicScene s是QGraphicsItem s,现在我想让我的程序等待让用户在每个场景中选择一个QGraphicsItem,但是我怎么做呢?

我试过这样做:

while(scene->selectedItems().length()<1 || bordScene->selectedItems().length()<1)
    ;

但是这只会导致程序进入一个无限循环,用户仍然不能选择项目。

这可能是一个相当简单的问题,但我似乎找不到一个简单的解决方案

您可以制作一个插槽并将两个GraphicsScenes的selectionChanged信号连接到它。在插槽中,您可以查看所选项目。因为槽只在一个连接的graphicsscene的选择发生变化时触发,你没有无限循环,你的程序不会被阻塞。