博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实现了一个可以滚动的文字控件
阅读量:3683 次
发布时间:2019-05-21

本文共 1444 字,大约阅读时间需要 4 分钟。

RollTextStyle.qml

import QtQuick 2.4
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QtQuick.Controls 1.3
import QtQuick.Controls.Private 1.0
 
Style{
id:rollTextStyle
property RollText control: __control
 
property Component rollText:Text {
id:rt
text: control.text
property bool rollFlag :true
property bool rollStart: false
PropertyAnimation on x{
id:leftRoll
to:parent.x-rollfunc()
duration: 2000
easing.type: Easing.Linear
}
PropertyAnimation on x{
id:rightRoll
to:parent.x+rollfunc()
duration: 2000
easing.type: Easing.Linear
}
Timer{
interval: 2000
running: true
repeat: true
onTriggered: {
if(control.running === true && rt.rollFlag === true)
{
rt.rollFlag = false
rightRoll.start()
}
else if(control.running === true && rt.rollFlag === false)
{
rt.rollFlag = true
leftRoll.start()
}
}
}
function rollfunc(){
if(rt.rollStart === false)
{
 
rt.rollStart = true
return 50
}
else
{
return 100
}
}
}
 
property Component panel: Item {
implicitWidth: rollLoader.implicitWidth
implicitHeight: rollLoader.implicitHeight
Loader{
id:rollLoader
sourceComponent: rollText
anchors.fill: parent
width: 160
height: 40
}
}
}
 
 

RollText.qml

import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Controls.Private 1.0
 
Control{
id:rollText
implicitWidth: 160
implicitHeight: 40
property string text:qsTr("test")
property bool running: false
 
style:Settings.styleComponent(Settings.style, "RollText.qml", rollText)
}
 

这个控件可以实现一个Text向左向右移动

转载地址:http://dzddn.baihongyu.com/

你可能感兴趣的文章
基于Spring boot+Vue的在线考试系统
查看>>
大数据学习路线
查看>>
前端学习路线
查看>>
推荐几个单机游戏下载网、高质量图片下载网
查看>>
数据库查询
查看>>
单臂路由配置
查看>>
静态路由及动态路由 RIP配置
查看>>
现代密码学:AES
查看>>
现代密码学:密码协议
查看>>
现代密码学:密钥管理
查看>>
数据库增删改
查看>>
RSA公钥
查看>>
【总】现代密码学复习要点总结(谷利泽)
查看>>
【sql-server 数据库 命令大全】
查看>>
数据结构与算法
查看>>
C/C++总结
查看>>
计算机组成原理总结
查看>>
1.3 QT界面美化
查看>>
2 QT数据传输(MVC)
查看>>
3.QT逻辑交互(信号槽)
查看>>