在 QScrollArea 的边缘绘画
Posted
技术标签:
【中文标题】在 QScrollArea 的边缘绘画【英文标题】:Painting on the margins of QScrollArea 【发布时间】:2014-02-11 12:35:14 【问题描述】:我想在 Photoshop 中绘制类似 x\y 轴比例的东西,但使用 QScrollArea 有一个很好的属性:
QAbstractScrollArea::setViewportMargins(20,20,0,0)
它工作正常 - 顶部和左侧有空白区域并将点指向 (0,0) 并以指定的偏移量绘制它。 但我不能在这个地方画画。 我试过了
painter.drawLine(-10,0,-10,height())
但它什么也没做。那么如何在这个边距空间上绘制一些东西呢?
【问题讨论】:
【参考方案1】:您正在视口上绘画,这不起作用。您需要在边距区域中放置一个小部件并在该小部件的paintEvent
内进行绘制。
【讨论】:
是的,确实,我需要在视口上绘画。我可以毫无问题地做到这一点,但在它的区域(0,0,width(),height))
。但我想让这个边缘区域无法访问。可能是改变画家的起源......我会尝试你的建议,但我认为这将是调整视口大小或缩放的问题......
@folibis 正如我所说,要在边缘区域绘画,您不能在视口上绘画!视口不包括边距!以上是关于在 QScrollArea 的边缘绘画的主要内容,如果未能解决你的问题,请参考以下文章