QRubberBand Selection - 停止所选项目周围的虚线
我正在使用通过将 QGraphicsView.setDragMode() 设置为橡皮筋选择而启用的默认 QRubberBand 选择项目。这工作正常,但是当选择一个项目时,它的边界矩形周围会显示一条灰色虚线,我想知道是否有任何方法可以防止这种情况?
I am selecting items using the default QRubberBand enabled by setting QGraphicsView.setDragMode()
to rubber band selection. This works fine, however when an item is selected it appears with a grey dotted line around it's bounding rect and I was wondering if there is any way to prevent this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看来做到这一点的唯一方法是重写 QGraphicsItem::paint()。
标准项目的paint()的默认实现将改变画笔,无论该项目是否被选择。但由于标准项目可能由 1 行 Paint() 调用组成,因此更改这一点是微不足道的。
例如,在 QGraphicsLineItem 中,它只是 Painter.drawLine( line() );
It appears the only way to do this is to override QGraphicsItem::paint().
The default implementation of paint() for standard items will change the pen if the item is selected or not. But since standard items likely consist of 1 line paint() calls changing this is trivial.
For example in a QGraphicsLineItem it would just be painter.drawLine( line() );