在Qt Design Studio中进行页面切换

在Qt Design Studio中进行页面切换


  1. 新建页面1,默认生成的布局,将方法改为一个信号:

    复制代码
    Page {
        width: 1024
        height: 768
    
        property alias button: button
    
        Button {
            id: button
            x: 64
            y: 64
            text: qsTr("load T2")
        }
    }
    
    T1Form {
        signal navigate(string page)
    
        button.onClicked: navigate("T2.qml")
    }

    在点击按钮时,需要转向T2

  2. 新建页面2,默认生成的布局,将方法同样改为一个信号:

    复制代码
    Item {
        width: 1024
        height: 768
    
        property alias button: button
    
        Button {
            id: button
            x: 64
            y: 64
            text: qsTr("return t1")
        }
    }
    
    T2Form {
        signal navigate(string page)
        button.onClicked: navigate("T1.qml")
    }

    在点击按钮时,需要返回T1

  3. 在App.qml中,如下配置

    复制代码
        Loader{
            id: loader
            source: "T1.qml"
        }
    
        Connections{
            target: loader.item
            function onNavigate(page){
                console.log("navigate to", page)
                loader.source = page
            }
        }

    Loader加载的真正的QML实例,都在 loader.item,包括根对象,包括信号

相关推荐
黄敬峰40 分钟前
从 DFS 遍历到抖音推荐算法:前端工程师的硬核复习笔记
前端
zach40 分钟前
网页中的虚拟滚动技术是不是源自IOS中的tableview的机制
前端
林希_Rachel_傻希希40 分钟前
1小时速通React之Hooks
前端·javascript·面试
柯克七七42 分钟前
公司前端项目打包体积从 2MB 降到 400KB,我改了这四个配置
前端
英勇无比的消炎药1 小时前
我才发现这些架构的“拆”与“合”哲学
前端
shen_1 小时前
AI Coding:前端UI规范笔记
前端
石山代码1 小时前
JavaScript 进阶核心知识点
开发语言·javascript·ecmascript
llz_1121 小时前
web-第五次课后作业
前端·后端·http
恋猫de小郭2 小时前
Redis 作者反驳「中国模型之所以强,是因为通过 API 蒸馏了美国模型」
前端·人工智能·ai编程