Qt,在选择时删除虚线矩形而不重新实现绘画

时间:2011-08-22 13:46:05

标签: qt pyqt selection pyside

我看过这个链接:

http://www.qtcentre.org/threads/15089-QGraphicsView-change-selected-rectangle-style

来自这篇文章:

QT 4.5 - Changing the selection marquee for QGraphicsItem

但我想知道是否有其他选项可以摆脱虚线矩形而不重新实现绘画。这很重要,所以我可以让PyQt和PySide例程快速绘制,但仍然具有我想要的外观。

1 个答案:

答案 0 :(得分:3)

抱歉,如果您不想选择矩形,则必须重新实现paint方法。它没有使用样式或类似的东西。你可以改变的唯一的是矩形使用QStyleOptionGraphicsItem :: palette.windowText()。color()作为基色。但在那之后......只绘制一条实线,然后是一条虚线。

最好的解决方案是重新实现油漆。我怀疑你会看到这次修改会带来性能损失。

我假设您确实希望保持您的商品可供选择。如果您在项目setFlag(QGraphicsItem::ItemIsSelectable, false)上停用该标记,则无法选择该标记,因此不会显示边框。