import QtQuick 2.5 Column { // Liste des labels et types property var fields: [ {label: "Server", type: "text"}, {label: "User", type: "text"}, {label: "Password", type: "password"} ] //anchors.centerIn: parent anchors.verticalCenter: parent.verticalCenter anchors.margins: 20 spacing: 15 width: parent.width * 0.8 // Repeater pour générer les champs basés sur la liste des labels et types Repeater { model: fields Row { spacing: 10 Text { width: parent.width / 2 - 5 text: modelData.label + ":" color: "white" font.pixelSize: 16 } // TextInput pour les champs Server et User, et mode Password pour Password Rectangle { width: 200 height: 20 color: "white" //border.color: "black" //border.width: 3 //radius: 5 TextInput { font.pixelSize: 16 color: "black" text: modelData.label // Détermine le mode de saisie en fonction du type echoMode: modelData.type === "password" ? TextInput.Password : TextInput.Normal } } } } }