web-dev-qa-db-fra.com

comment passer à la page suivante lorsque vous cliquez sur le bouton

salut les gars, je suis nouveau dans la programmation qml et je me demandais comment puis-je passer à une autre page lorsque l'utilisateur clique sur mon bouton. en passant, comment puis-je créer une nouvelle page dans le sdk d'ubuntu afin que, lorsque l'utilisateur clique sur le bouton, il se rende là-bas.

Merci

3
Diogo Figueira

Le code suivant est fortement inspiré de celui fourni par le SDK officiel documentation . J'ai seulement changé le contrôle par défaut pour qu'il soit Button au lieu de ListItem:

import QtQuick 2.0
import Ubuntu.Components 0.1

MainView {
    width: units.gu(48)
    height: units.gu(60)
    PageStack {
        id: pageStack
        Component.onCompleted: Push(page0)
        Page {
            id: page0
            title: i18n.tr("Root page")
            visible: false
            Column {
                anchors.margins: units.gu(3)
                spacing: units.gu(3)
                anchors.fill: parent
                Button {
                    anchors.horizontalCenter: parent.horizontalCenter
                    text: i18n.tr("Page one")
                    onClicked: pageStack.Push(page1, {color: UbuntuColors.orange})
                }
                Button {
                    anchors.horizontalCenter: parent.horizontalCenter
                    text: i18n.tr("External page")
                    onClicked: pageStack.Push(Qt.resolvedUrl("MyCustomPage.qml"))
                }
            }
        }
        Page {
            title: "Rectangle"
            id: page1
            visible: false
            property alias color: rectangle.color
            Rectangle {
                id: rectangle
                anchors {
                    fill: parent
                    margins: units.gu(5)
                }
            }
        }
    }
}

Pour changer de page ou créer une nouvelle page, il vous suffit d’appeler la méthode Push. La page poussée peut être un élément, un composant ou une URL.

2
Sylvain Pineau