在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,包括根对象,包括信号

相关推荐
Eason_Lou42 分钟前
【无标题】
前端·vue.js·html
_codemonster1 小时前
npm run dev 是在开发模式运行,怎么在生产环境运行
前端·npm·node.js
kyriewen1 小时前
我受够了复制报错去问 AI,花一下午给控制台做了个调试助手
前端·javascript·ai编程
IT_陈寒2 小时前
Redis的DEL命令竟然没删掉数据?我踩的这个坑你得知道
前端·人工智能·后端
anOnion3 小时前
构建无障碍组件之Menu and Menubar Pattern
前端·html·交互设计
慧都小妮子3 小时前
前端实现复杂公式计算:SpreadJS 在京东物流 Udata 平台的落地实践
javascript·数据分析·excel·数据可视化·spreadjs·前端表格控件
JavaGuide3 小时前
我用 Claude Code/ZCode+GLM-5.3 从零做了一款 Agent 游戏!
前端·后端
Eason_Lou3 小时前
vue flow使用注意事项
前端·vue.js
JJJennie7773 小时前
Gemini 3.7 Flash 上线,Google 想让 AI 多干活
开发语言·javascript·ecmascript