标签(空格分隔): Qt
桌面开发,难免要处理鼠标事件的例子。
变色矩形的例子
import QtQuick 2.0
Rectangle {
width: 320;
height: 240;
MouseArea {
anchors.fill: parent;
acceptedButtons: Qt.LeftButton | Qt.RightButton;//表示处理鼠标和右键
onClicked: {
if(mouse.button === Qt.RightButton){
Qt.quit();
}
else if(mouse.button === Qt.LeftButton){
color = Qt.rgba((mouse.x % 255)/255.0,(mouse.y % 255)/255.0,0.6,1.0);
}
}
onDoubleClicked: {
color = "grey";
}
}
}
运行效果,上面的代码仅仅是绘制一个矩形,当鼠标左键按下时改变矩形区域的颜色,鼠标右键按下时退出应用。
MouseArea对象可以附加到Item上供Item处理鼠标事件,它本身是一个不可见的Item.在其内部,可以直接引用它所附着的对象的属性和方法。可以将MouseArea理解为它所附着的Item代理。
网友评论