zoukankan      html  css  js  c++  java
  • qml 画页迁移

    想要达到画页迁移的效果,有很多方法:比如通过loader将qml加载,然后,或者将visible置为false.或者将souce变成空字符串。或者通过动态创建对象,都可以,但是,放到我们实机上这一切都不好使了,这个是为什么?报错都是在将要迁移到子画页时,说无法找到子画页的id,我明明在main.qml里都定义了,这个真的是不清楚。qt creater都没有问题的。后来qml有个控件叫StackView,这个控件就好使。

            StackView {
                id: stack
                anchors.centerIn: parent
                 parent.width
                height: parent.height
    
                Loader{
                    id:page_loader_main_menu
                     parent.width
                    height: 600
                    anchors.right: parent.right
                    anchors.top: parent.top
                    source: "Main_menu.qml"
                }
            }
            Component{
                id:main_menu_search_page
                    Loader{
                        id:page_loader_main_menu_search
                         main_menu_rec.width
                        height: 600
                        source :"Search_Hot.qml"
                    }
            }
    
            Mini_Player{}
            Connections{
                target: main_menu_control_observer
                onMain_menu_lift_search_hot:{
                    stack.push(main_menu_search_page)
                    console.log("depth:",stack.depth)
                }
                onSearch_hot_lift_main_menu:{
                    console.log("return_depth:",stack.depth)
                    if(stack.depth === 1) {stack.clear()}
                }
            }
        }

    到这里还没什么太大的问题,反复用C++与qml交互。是因为子画页不识别id,这个让人很无语。现在搞的这么麻烦。当画页迁移到Search_Hot.qml后,居然还能点击根画页的button,导致能够不断的入栈迁移画页。

    Search_Hot.qml中,最上面的位置加入以下代码,防止鼠标穿透

        MouseArea{
            anchors.fill:parent
            enabled:true
            onClicked: {}
            onPressed: {}
            onReleased: {}
        }

    不过为什么到实机的时候,动态创建对象都不好用了呢?这个谁能给我解答下?

  • 相关阅读:
    102. 教程:重装谷歌浏览器的教程
    IGBT知识普及
    [刷机资源] 荣耀8 E5 B391 V2 ROM集合 Xposed DPI调整等 N多自定义功能 Kangvip@HRT( 2017-9-28)
    ITPUB附件下载免输验证码 (实际下载地址的规则)
    花生壳内网穿透不再支持国外IP!
    golang 如何开发windows窗口界面
    golang 热重启
    强化go get命令
    go mod get go-git timeout
    golang单一职责原则接口设计例子
  • 原文地址:https://www.cnblogs.com/wxmwanggood/p/11003591.html
Copyright © 2011-2022 走看看