济南品牌营销型网站建设百度关键词搜索引擎排名优化
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}}}