用QML做了一个简单的图片查看器,麻雀虽小五脏俱全,其中涉及了鼠标大小区域覆盖问题,鼠标点击与鼠标点击移动问题,以及滚轮事件问题。
具体实现代码如下:
import Material 0.1
import QtQuick 2.4
import QtQuick.Layouts 1.2
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
Window {
id: win
visible: true
property string windowBgColor: "white"
width: 300
height:300
x:100
y:100
MouseArea {
id:fill_mouse
anchors.fill: parent
property point clickPos: "0,0"
propagateComposedEvents: true
onClicked: {
rect.border.color = "black"
console.log("onClicked:", mouse.x,mouse.y)
}
onPressed: {
clickPos = Qt.point(mouse.x,mouse.y)
console.log("onPressed:", mouse.x,mouse.y)
}
onWheel: {
if (wheel.angleDelta.y > 0) {
rect.width += 5;