Qt/QML学习-Tumbler

QML学习

main.qml

import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    Tumbler {
        id: tumbler
        anchors.centerIn: parent
        // 只显示3个视图
        visibleItemCount: 3
        // 绘制背景视图
        background: Rectangle {
            border.width: 1
            radius: 10
        }

        // 模型
        model: ListModel {
            ListElement { value: "视图1" }
            ListElement { value: "视图2" }
            ListElement { value: "视图3" }
            ListElement { value: "视图4" }
            ListElement { value: "视图5" }
        }
        // 代理
        delegate: Rectangle {
            width: 100
            height: 50
            color: "transparent"
            Text {
                anchors.centerIn: parent
                text: value
                font.bold: true
                font.pointSize: 15
                color: tumbler.currentItem === this.parent? "red": "black"
                Rectangle {
                    y: parent.height + 5
                    color: "green"
                    width: parent.width
                    height: 2
                }
            }
            MouseArea {
                anchors.fill: parent
                hoverEnabled: true
                onEntered: {
                    color = "gray"
                    opacity: 0.5
                }
                onExited: {
                    color = "transparent"
                    opacity: 1
                }
            }
        }
        // 是否循环
        wrap: true
        // 视图加载完成时
        Component.onCompleted: {
            tumbler.currentIndex = 1
            tumbler.currentIndex = 0
        }
    }
}

演示

视频讲解

相关推荐
Evaporator Core44 分钟前
MATLAB学习之旅:图像处理与计算机视觉应用
学习·计算机视觉·matlab
吃面不喝汤661 小时前
Qt跨线程信号槽调用:为什么信号不能像普通函数那样调用
qt·音视频
蜡笔弄丢了小新1 小时前
qt之Vertical Layout
开发语言·qt
laimaxgg1 小时前
Qt常用控件之微调框QSpinBox
开发语言·c++·qt·qt5·qt6.3
一天八小时1 小时前
HTTP学习——————(四)TLS等加密算法
网络协议·学习·http
weixin_502539852 小时前
rust学习笔记7-344. 反转字符串
笔记·学习
hzj62 小时前
极简Redis速成学习
数据库·redis·学习
kikikidult2 小时前
OpenGL 04--GLSL、数据类型、Uniform、着色器类
c++·笔记·学习·opengl
钰爱&3 小时前
【Qt】MVC设计模式
c++·qt·单例模式·设计模式·mvc·简单工厂模式
Moonnnn.3 小时前
信号与系统笔记——第一章 信号与系统概述(二)
笔记·学习