Qt Quick实现字符串匹配

本文介绍了如何在Qt Quick中利用Delegate实现字符串匹配功能。通过在列表项Delegate中定义函数,使用简单暴力算法检查字符串是否符合特定模式。若不匹配,则通过设置Delegate的状态来隐藏相应项。
摘要由CSDN通过智能技术生成



原理很简单,就是在列表的Delegate中定义一个函数用于检测字符串是否匹配模式,算法也是暴力算法,如果不匹配就将delegate的state设置为定义的一个状态(该状态具有一些使项隐藏的property和transition)。


核心代码:

import QtQuick 2.0

Item {
    id: root
    height: 50

    property alias text: content.text
    property string pattern: "" //匹配用的模式串

    states: [
        State {
            name: "normal"
            PropertyChanges { target: root; height: 50; opacity: 1 }
        },
        State {
            name: "hidden"
            PropertyChanges { target: root; height: 0; opacity: 0 }
        }
    ]

    state: "normal"

    transitions: [
        Transition {
            from: "normal"
            to: "hidden"
            ParallelAnimation {
                NumberAnimation { property: "opacity"; duratio
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值