QML: des alias pour les enfants de propriétés
J'ai créé dialogue et d'essayer d'ajouter des alias pour modifier le titre et le texte:
import QtQuick 2.0
import Ubuntu.Components 0.1
import Ubuntu.Components.Popups 0.1
Item {
signal confirmed;
signal canceled;
property alias title: dialog.title
property alias text: dialog.text
signal show(variant caller);
Component {
id: dialogComponent
Dialog {
id: dialog
title: "Exit Game"
text: "Are you sure that you want to exit?"
Button {
text: "cancel"
onClicked:
{
canceled();
PopupUtils.close(dialog);
}
}
Button {
text: "confirm"
color: "orange"
onClicked:
{
confirmed();
PopupUtils.close(dialog);
}
}
}
}
onShow:
{
PopupUtils.open(dialogComponent, caller)
}
}
Mais j'a un problème:
qrc:/ConfirmationDialog.qml:8:23: Invalid alias reference. Unable to find id "dialog"
Donc, comment créer cet alias? Pourquoi le Point de ne pas le voir? Quelle est la meilleure façon de modifier cette liste de propriétés?
Meilleures salutations,
Nick
OriginalL'auteur Robotex | 2013-04-11
Vous devez vous connecter pour publier un commentaire.
Boîte de dialogue de l'objet ne seront pas disponibles jusqu'à ce que u ont instancié, puisque c'est à l'intérieur d'un composant.
Vous pouvez renvoyer l'id, si elle n'est pas dans le composant.
OriginalL'auteur Mahesh
C'est à cause de la
Component
élément QML. Il suffit de faire lesDialog
un élément de niveau supérieur dans votre.qml
fichier et traiter que comme une composante dynamique instanciations.OriginalL'auteur Jan Kundrát