成都 网站建设 公司对招聘网站页面设计做建议
QML使用Timer使用定时器
Timer
计时器可用于触发操作一次,或以给定的间隔重复触发。
常用属性:
| interval |   设置触发器之间的间隔(以毫秒为单位)。 默认间隔为 1000 毫秒。  | 
| repeat |   设置重复,为真,则以指定的间隔重复触发计时器 默认为(false)  | 
| running | 设置启动,true为启动,false(默认) | 
| triggeredOnStart | 触发启动 | 
信号:
| triggered() | 触发时,发出该信号 | 
函数方法:
| restart() | 重新启动 | 
| start() | 开启 | 
| stop() | 暂停 | 
设置单次的定时器:
Text{id:text1x:100y:100text:"null"font.pixelSize: 20//设置字体大小}Timer{interval: 2000//2秒running: true//开启onTriggered:text1.text=Date().toString();//设置时间} 
初始状态: 两秒后:


持久的定时器:
Text{id:text1x:100y:100text:"null"font.pixelSize: 20//设置字体大小}Timer{interval: 2000//2秒running: true//开启repeat: true //开启以指定的间隔重复触发计时器onTriggered:text1.text=Date().toString();} 
triggeredOnStart的使用:
简单的讲:
- 如果开启triggeredOnStart,则开始时会先执行一次,然后等待时间间隔
 - 如果关闭triggeredOnStart,则需要先等待时间间隔,然后才会执行
 
不开启triggeredOnStart:
Text{id:text1x:100y:100text:"null"font.pixelSize: 20//设置字体大小}Timer{interval: 1000//1秒running: true//开启repeat: true //开启以指定的间隔重复触发计时器onTriggered:text1.text=Date().toString();} 
初始状态为:

开启triggeredOnStart:
Text{id:text1x:100y:100text:"null"font.pixelSize: 20//设置字体大小}Timer{interval: 1000//1秒running: true//开启repeat: true //开启以指定的间隔重复触发计时器triggeredOnStart: trueonTriggered:text1.text=Date().toString();} 
初始状态为:

函数的使用:
创建3个Rectangle,分别对应 开启定时器,暂停定时器,重启定时器,鼠标点击分别执行相应的函数。
Text{id:text1x:100y:100text:"null"font.pixelSize: 20//设置字体大小}Timer{id:time1interval: 1000//1秒repeat: true //开启以指定的间隔重复触发计时器triggeredOnStart: trueonTriggered:text1.text=Date().toString();}Row{y:200Rectangle{id:rect1width: 100;height: 100MouseArea{anchors.fill:parentonPressed:{time1.start()//开启定时器}}Text{anchors.fill:parenttext: "开启定时器"font.bold: true}}Rectangle{id:rect2width: 100;height: 100MouseArea{anchors.fill:parentonPressed:{time1.stop()//暂停定时器}}Text{anchors.fill:parenttext: "暂停定时器"font.bold: true}}Rectangle{id:rect3width: 100;height: 100MouseArea{anchors.fill:parentonPressed:{time1.restart()//重新开启定时器}}Text{anchors.fill:parenttext: "重新开启定时器"font.bold: true}}} 

