如何禁用QGraphiscView中的Rubberband选择,仅允许用户在工具中单击一次选择单个项目?
谢谢
答案 0 :(得分:1)
如果我的理解是正确的,那么您想禁用橡皮筋选择并且仍然能够左键单击以选择项目(允许使用Ctrl修饰符以一次选择多个项目)。
因此,在这种情况下,您需要使用QGraphicsView::setDragMode
方法并设置QGraphicsView::NoDrag
选项。您可以直接从QGraphicsView
对象或子类QGraphicsView
实现此目的,并在构造函数上添加对方法的调用,例如(PySide):
from PySide.QtGui import *
from PySide.QtCore import *
class MyGraphicsView(QGraphicsView):
def __init__(self, parent = None):
super(MyGraphicsView, self).__init__(parent = parent)
self.setDragMode(QGraphicsView.NoDrag)
如果您的图形项目启用了Qt::ItemIsSelectable
标志,那么您仍然可以照常选择它们。
希望有帮助。