【发布时间】:2015-03-18 10:03:25
【问题描述】:
是否可以使用 Qt (C++) 在图像中创建可点击区域? 我有一张图片,我想把它加载到 Qt 上,然后选择一个可点击的区域。
想法?
【问题讨论】:
标签: c++ image qt image-processing clickable-image
是否可以使用 Qt (C++) 在图像中创建可点击区域? 我有一张图片,我想把它加载到 Qt 上,然后选择一个可点击的区域。
想法?
【问题讨论】:
标签: c++ image qt image-processing clickable-image
您可以使用QGraphicsScene,它可以由QGraphicsView 显示。使用addPixmap() 添加图像。对于可点击区域,您可以子类化例如QGraphicsRectItem 并重新实现 mousePressEvent()。使用addItem() 将此项目添加到图形场景。您甚至可以使用setCursor() 为可点击区域设置不同的光标。
【讨论】:
基本上,图像本身并不是一种视觉结构,它只是您在某物上绘制的数据。如果你在QWidget 上绘制它,你就有了鼠标事件的虚函数,它为你提供了关于光标位置和按钮的信息。
这取决于您愿意使用的堆栈。 Qt 提供了良好的旧 QWidget,相关但更深入的 QGraphicsView,最后但并非最不重要 - QML,它更容易 - 只需使用 Image 元素并放置一个 MouseArea 填充它就在那里。
【讨论】: