Is it possible to create clickable zones in an image with Qt (C++)? I have an image, which I want to load it on Qt, and then select a clickable zone for.
Ideas?
Is it possible to create clickable zones in an image with Qt (C++)? I have an image, which I want to load it on Qt, and then select a clickable zone for.
Ideas?
您可以使用 a QGraphicsScene
,它可以由 a 显示QGraphicsView
。用 . 添加图像addPixmap()
。对于可点击区域,您可以继承 egQGraphicsRectItem
并重新实现mousePressEvent()
. 将此项目添加addItem()
到图形场景中。您甚至可以使用 为可点击区域设置不同的光标setCursor()
。
基本上,图像本身不是一个视觉结构,它只是你在某物上绘制的数据。如果您在 a 上绘制它,QWidget
您将拥有鼠标事件的虚拟功能,它为您提供有关光标位置和按钮的信息。
这取决于您愿意使用的堆栈。Qt 提供了良好的旧QWidget
的,相关但稍微更深入QGraphicsView
的,最后但并非最不重要的 - QML,它更容易 - 只需使用一个Image
元素并放置一个MouseArea
填充它的元素,就可以了。