Qt - 从更大的Pixmap图像中绘制一个Rect / Frame

时间:2010-01-28 18:59:36

标签: user-interface image qt4 drawing qt-creator

我一直在为这个看似简单的任务敲打我的脑袋,我真的可以使用一些帮助。 我在gui中加载了一个宽图像(使用设计器..),我希望能够只绘制一部分,一个矩形。 我需要能够在大图像上更改此矩形位置,以便随意绘制较大图像的不同部分。在这个过程中,rect必须保持其大小。

使用Ui :: MainWindow对象我可以访问包含图像的标签,并且首选使用此选项的解决方案(为了跟上我已编写的其余代码)< / p>

任何解决方案都将非常感激:)

谢谢,

Itamar

2 个答案:

答案 0 :(得分:1)

我肯定(为了方便使用)只需在设计器中放置一个空label作为占位符。

然后为此标签实现paintEvent(将其委托给您自己的方法)。你还必须研究QPainter,QPixMap等......基于这些提示和文档应该是可行的。

如果您想要更多,我建议您提供一个小代码片段来处理。

答案 1 :(得分:0)

如果您想通过设计师或多或少地完成此操作,可以将QScrollArea放在您想要显示图像部分的位置。如果将滚动区域的滚动条策略设置为永不显示,则可以通过滚动区域窗口小部件手动更改可见的部分。但是,创建派生窗口小部件并重新实现绘制功能可能会更复杂。