QT新手日记033

QT新手日记033

QTQUICK - MouseArea

import QtQuick

window

{

width:640

height:480

visible:true

title:qsTr("Rectangle使用")

Rectangle

{

id:标识号

width:100

height:100

color:"red"

anchors.bottom:parent.bottom对齐位置

border.color:"black"

border.width:1

MouseArea{

id:标识号

width:100

height:100

x:10

y:10

//上面的配置如果有下面这行的话则没有用了。

anchors.fill:parent//彼填充父层区域

hoverEnabled:true/false//鼠标进入时也会发信号,默认不会。

onClicked:(mouseover型的参数mouse)=>{

//单击要干点什么事

if(mouse.button==Qt.Leftbutton或者Qt.RightButton)

{

// 点左键或者右键不同的时候要处理什么业务?

}

}

onClicked:{

//单击要干点什么事

}

onDoubleClicked:{

//双击要干点什么事

}

onPressAndHold:{

//鼠标悬停时干点什么事

}

}

onEntered:{

//鼠标进入时做点什么事

}

onExited:{

//鼠标离开时做点什么事

}

onPositionChanged:(MouseEvent型的参数mouse)=>{

//鼠标位置发生变化时干点什么事?

//mouse.x和mouse.y决定了位置,当然还有mouse.button决定按下了什么键

}

onPressAndHold:(MouseEvent型的参数mouse)=>{

//鼠标持续按下超过800毫秒后干点什么事?

//mouse.x和mouse.y决定了位置,当然还有mouse.button决定按下了什么键

}

onPressed:(MouseEvent型的参数mouse)=>{

//鼠标按下干点什么事?

//mouse.x和mouse.y决定了位置,当然还有mouse.button决定按下了什么键

}

onReleased:(MouseEvent型的参数mouse)=>{

//鼠标放开时干点什么事?

//mouse.x和mouse.y决定了位置,当然还有mouse.button决定按下了什么键

}

onWheel:(WheelEvent的能数wheel)=>{

//当鼠标滚轮滚动时干点什么,一般wheel.angleDelta().y()表示正负120的滚动量,当然还有wheel.x(),wheel.y()表示位置

//wheel.button:int是通过位运算的多个按键是否按下:Qt.LeftButton|Qt.RightButton|Qt.MiddleButton

//wheel.inverted:bool传递增量值是否已正负反转。

//wheel.modifiers:int类似于button,表示键盘同时按下什么键:Qt.NoModifier/ShiftModifier/ControlModifier/AltModifier/MetaModifier/KeypadModifier等的或运算得到数据

}

//只读属性mouseX,mouseY表示鼠标位置,containsMouse表示是否在响应鼠标的区域内部

acceptedButtons:Qt.LeftButton|Qt.RightButton//表示允许响应什么按键。其中,Qt.AllButtons表示所有键,默认是Qt.LeftButton

cursorShape:Qt.ArrowCursor//表示鼠标前头样式。很多。

//Qt.ArrowCursor、、默认

//Qt.UpArrowCursor

//Qt.CrossCursor

//Qt.WaitCursor//等待

/Qt.IBeamCursor

//Qt.SizeVerCursor

//Qt.SizeHorCursor

//Qt.SizeBDiagCursor

//Qt.SizeFDiagCursor

//Qt.SizeAllCursor

//Qt.BlankCursor

//Qt.SplitVCursor

//Qt.SplitHCursor

//Qt.PointingHandCursor//小手

//Qt.ForbiddenCursor

//Qt.WhatsThisCursor//带小问号

//Qt.BusyCursor//繁忙

//Qt.OpenHandCursor

//Qt.ClosedHandCursor

//Qt.DragCopyCursor

//Qt.DragMoveCursor

//Qt.DragLinkCursor

//拖动

drag.target:parent

drag.axis:"XAxis"

drag.minimumX:30

drag.maximumX:150

drag.filterChildren:true

}

}

本节是MouseArea不可视的鼠标打击区域的,其他为辅助

相关推荐
用户805533698031 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner1 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Quz6 天前
QML Hello World 入门示例
qt
xcyxiner9 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner10 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner10 天前
DicomViewer (添加模型类)3
qt
xcyxiner11 天前
DicomViewer (目录调整) 2
qt
xcyxiner11 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
LDR00613 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术13 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript