【QT学习】qml中实现文字的逐个显示

38 篇文章 0 订阅

 效果:文字能逐个显示,然后全部消失,然后再逐个显示。

import QtQuick 2.9
import QtGraphicalEffects 1.0


Rectangle{
    property var textVar: ["等","待","确","认"," ."," ."," ."]
    property var textIndex: 0

    color: "transparent"
    width: 250
    height: 50


    Item
    {
        id:waitItem
        anchors.left: parent.left
        anchors.leftMargin: 15
        anchors.verticalCenter: parent.verticalCenter
        implicitHeight: 30
        implicitWidth: 30
        Rectangle
        { id: rect
            width: parent.width
            height: parent.height
            color: Qt.rgba(0, 0, 0, 0)
            radius: width / 2
            border.width: width / 6
            visible: false
        }
        ConicalGradient
        {
            width: rect.width
            height: rect.height
            gradient: Gradient
            { GradientStop
                { position: 0.0; color: "#87CEFF" }
                GradientStop
                {
                    position: 1.0;
                    color: "blue"
                }
            }
            source: rect
            Rectangle {
                anchors.top: parent.top
                anchors.horizontalCenter: parent.horizontalCenter
                width: rect.border.width
                height: width
                radius: width / 2
                color: "blue"
            }
            RotationAnimation on rotation {
                from: 0
                to: 360
                duration: 800
                loops: Animation.Infinite
            }
        }
    }

    Text
    {
        id:scrollText
        height:parent.height
        anchors.left: waitItem.right
        anchors.leftMargin: 15

        color:"white"
        //font.bold: true
        font.pixelSize: 22
        verticalAlignment: Text.AlignVCenter
        text: ""

    }
    Timer
    {
        id:textTimer
        interval: 1000
        running: true
        repeat: true
        onTriggered:
        {
            if(textIndex == textVar.length)
            {
                scrollText.text = ""
                textIndex = 0;
                return;
            }
            scrollText.text = scrollText.text + textVar[textIndex]
            textIndex++;
        }

    }

}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt和GDAL都是常用的开源库,在图像处理和地理信息系统都有广泛应用。Qt是一个跨平台的应用程序开发框架,提供了丰富的用户界面和图形系统功能。GDAL(Geospatial Data Abstraction Library)是一个用于读取、写入和处理地理空间数据的库。 要在Qt显示图像,可以使用Qt提供的图形系统功能。首先,需要将图像加载到内存,可以使用GDAL库来读取图像数据。GDAL提供了许多函数来读取不同格式的地理空间数据。读取图像后,可以获取图像的宽度和高度等属性信息。 接下来,可以使用Qt的图像显示功能来显示图像。可以使用QImage类来创建一个用于显示图像的对象,并指定图像的尺寸和颜色格式。然后,可以使用QPixmap或者QPainter等类来将图像绘制到窗口或其他绘制设备上。可以使用QWidget作为图像显示的容器,将图像显示在窗口的指定位置。 在显示图像时,还可以进行一些图像处理操作,如缩放、旋转、剪切等。Qt提供了一些图形变换函数和图像处理算法,可以对图像进行自定义的处理。 除了显示图像,还可以在图像上添加一些图形元素,如点、线、面等。可以使用Qt提供的绘图功能来绘制图形元素,如QPoint、QLine、QPolygon等类。可以根据图像的坐标系和像素坐标的对应关系,将图形元素的坐标转换为画布上的坐标。 总之,使用Qt和GDAL可以方便地在应用程序显示图像,并进行一些图像处理和地理空间数据操作。通过结合这两个开源库的强大功能,可以实现更具交互性和可视化效果的图像处理和地理信息系统应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值