如何禁用qgraphicsitem的多项选择?

雅鲁科

我是Qt的新手。看来选择qgraphicsitem的默认设置是按ctrl按钮。但是可以禁用此功能吗?还是重新加载此功能?

dom0

这由项目的标志控制。要禁用对特定项目的选择,请执行

item->setFlag(QGraphicsItem::ItemIsSelectable, false);

如果你想完全地禁用的选择项目QGraphicsScene,无论项目的标志,我建议要连接QGraphicsScene::selectionChangedQGraphicsScene::clearSelection

如果要禁用多个选择,建议您执行以下操作:

  • 子类化QGraphicsScene并保持指向lastSelectionQGraphicsItem的指针
  • 创建一个连接到的插槽 QGraphicsScene::selectionChanged
  • 检查selectedItems
    • 它是空的:无事可做(=未选择任何内容)
    • 仅包含lastSelection:无事可做(=选择没有真正改变)
    • 包含一个项目,而不是lastSelection:设置lastSelection为该项目(=第一次选择一个项目)
    • 包含两项:一项必须为lastSelection从选择(lastSelection->setSelected(false);)中删除那个,设置lastSelection为其余项目。(=已选择另一个项目,将选择移至该项目)

在修改插槽内的选择期间,您可能需要屏蔽信号。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何禁用qgraphicsitem的多项选择?

来自分类Dev

如何实现多项选择?

来自分类Dev

CNContactPickerViewController启用以禁用多项选择

来自分类Dev

如何克服多项选择问题

来自分类Dev

如何使用JavaScript设置多项选择的值

来自分类Dev

如何禁用形状的选择?

来自分类Dev

如何在键表中选择多项选择值

来自分类Dev

如何在选择中获得多项选择

来自分类Dev

随机选择多项选择

来自分类Dev

如何禁用选择对撞机

来自分类Dev

是否可以在SSAS的OLAP多维数据集中禁用维度值的多项选择?

来自分类Dev

如何为option_form_collection启用多项选择?

来自分类Dev

如何在组合框上有多项选择项

来自分类Dev

Python:如何在随机多项选择中跟踪“正确”答案

来自分类Dev

ReactJS:如何在Dropdown中执行多项选择?

来自分类Dev

如何在VueJS中绑定多项选择测验答案

来自分类Dev

如何分析R中的多项选择题?

来自分类Dev

如何在python上进行多项选择游戏

来自分类Dev

如何在python上进行多项选择游戏

来自分类Dev

如何使用ui-selectable传递准确的多项选择数据

来自分类Dev

Python:如何在随机多项选择中跟踪“正确”答案

来自分类Dev

如何创建多项目选择下拉列表?

来自分类Dev

laravel:多项选择查询

来自分类Dev

Android GridView多项选择

来自分类Dev

JavaFX ListView多项选择

来自分类Dev

jQuery处理多项选择

来自分类Dev

Altair中的多项选择

来自分类Dev

从字典中选择多项

来自分类Dev

CDE:多项选择