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不可视的鼠标打击区域的,其他为辅助

相关推荐
昇腾CANN几秒前
TileLang-Ascend 算子性能优化方法与实操
开发语言·javascript·性能优化·昇腾·cann
沐知全栈开发12 分钟前
ionic 手势事件详解
开发语言
lsx20240632 分钟前
Bootstrap 按钮
开发语言
神仙别闹35 分钟前
基于 Python 实现 BERT 的情感分析模型
开发语言·python·bert
禾叙_41 分钟前
【langchain4j】结构化输出(六)
java·开发语言
NQBJT42 分钟前
VS Code配置Python人工智能开发环境
开发语言·人工智能·vscode·python
byoass1 小时前
智巢AI知识库深度解析:企业文档管理从大海捞针到精准狙击的进化之路
开发语言·网络·人工智能·安全·c#·云计算
南境十里·墨染春水1 小时前
C++笔记 STL——set
开发语言·c++·笔记
L1624761 小时前
Win11 共享→Windows Server 访问故障总结(极简可复用)
开发语言·windows·php
.柒宇.2 小时前
FastAPI 基础指南:从入门到实战
开发语言·python·fastapi