我想在Qt QFrame中绘制,但是QFrame将有一个边框。据我所知,paintEvent接收到一个与整个frameRect相关联的QPainter,因此我将不得不抵消边框的画图操作。这是正确的吗?是否有一种方法可以获得已经与小部件内部部分关联的QPainter,而不需要(大小上的变量)边框?
发布于 2014-03-15 07:27:05
您必须考虑contentsRect contentsRect()->返回小部件的margins.using中的区域,返回contensRect()的返回值,可以限制它在rect中绘制任何内容。
发布于 2014-03-15 02:45:00
要做到这一点,一种方法是将QWidget嵌入到QFrame中,将其放置在一个简单的QVBoxLayout布局或没有边距的QStackedLayout布局中,然后绘制QWidget。不过,如果你只是简单地抵消你的画,你可能会得到更好的表现。
https://stackoverflow.com/questions/22415057
复制相似问题