【问题标题】:Painting on the margins of QScrollArea在 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())

但它什么也没做。那么如何在这个边距空间上绘制一些东西呢?

【问题讨论】:

    标签: qt user-interface qt5


    【解决方案1】:

    您正在视口上绘画,这不起作用。您需要在边距区域中放置一个小部件并在该小部件的paintEvent 内进行绘制。

    【讨论】:

    • 是的,确实,我需要在视口上绘画。我可以毫无问题地做到这一点,但在它的区域(0,0,width(),height))。但我想让这个边缘区域无法访问。可能是改变画家的起源......我会尝试你的建议,但我认为这将是调整视口大小或缩放的问题......
    • @folibis 正如我所说,要在边缘区域绘画,您不能在视口上绘画!视口不包括边距!
    猜你喜欢
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-06
    • 2017-06-02
    • 2016-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多