C'est vrai qu'il manque un tuto sur ce sujet. Ce que tu veux faire demande certaine connaissance en JS. En gros pour ça tu doit utiliser
Qt. Voici la liste des
classes qui m'a beaucoup aider. Comme tu peux voir la doc est en C++ mais si tu connait le JS tu pourras transposer sans problème, aide toi du débugger pour regarder le détail des propriétés et des méthodes de l'objet désiré pour t'aider. J'ai chercher la doc pour la version JS de Qt, Qt Script sans jamais réussir à tomber dessus, enfin si mais pas de liste de classe avec les détails du coup j'utilise celle du dessus, ce qui n'est pas vraiment fait pour aider un débutant. Ceci dit, si tu as le courage de chercher et que par bonheur tu trouverais, fait moi signe ^^.
Puisse le tout puissant dieu Google être plus clément avec toi dans tes recherches.
Bon je te fait le code pour la première image, comme ça tu auras le code du squelette.
J'ai commenté pas mal je pense donc tu devrais comprendre.
Code: Select all
var selectWindow = new QDialog(); //Créer une boite de dialogue
selectWindow.setWindowTitle(' '); //string - Changer le nom de la fenêtre
var layoutSelectWindow = new QFormLayout(); //Créer un layout
selectWindow.setLayout(layoutSelectWindow); //Attribut le layout à la boite de dialogue
var groupBoxM = new QGroupBox('Choisir la durée en minutes', selectWindow); //Créer un groupe pour les boutons
var radioButtonValueM = ['15', '30', '45']; //Tableau des labels des boutons
var radioButtonM = []; //Tableau vide contenant les futurs objets boutons radio
for (var i = 0; i < radioButtonValueM.length; i++) {
radioButtonM[i] = new QRadioButton(radioButtonValueM[i]); //Créer les boutons et les met dans un tableau
}
var hBoxM = new QHBoxLayout; //Créer un layout horizontal
for (var i = 0; i < radioButtonM.length; i++) {
hBoxM.addWidget(radioButtonM[i], 0, 0); //Rajoute les boutons au layout
}
groupBoxM.setLayout(hBoxM); //Attribut le layout au groupe de boutons
var groupBoxH = new QGroupBox('Choisir la durée en heures', selectWindow); //Rebelote - Créer un groupe pour les boutons
var radioButtonValueH = ['1', '2', '3', '4', '5']; //Tableau des labels des boutons
var radioButtonH = []; //Tableau vide contenant les futurs objets boutons radio
for (var i = 0; i < radioButtonValueH.length; i++) {
radioButtonH[i] = new QRadioButton(radioButtonValueH[i]); //Créer les boutons et les met dans un tableau
}
var hBoxH = new QHBoxLayout; //Créer un layout horizontal
for (var i = 0; i < radioButtonH.length; i++) {
hBoxH.addWidget(radioButtonH[i], 0, 0); //Rajoute les boutons au layout
}
groupBoxH.setLayout(hBoxH); //Attribut le layout au groupe de boutons
var buttonBox = new QDialogButtonBox(selectWindow); //Créer une boite pour les boutons
buttonBox.addButton(QDialogButtonBox.Ok); //Ajout du bouton OK dans la boite
buttonBox.addButton(QDialogButtonBox.Cancel); //Ajout du bouton Annuler dans la boite
layoutSelectWindow.addRow(groupBoxM); //Ajout de la boite au layout
layoutSelectWindow.addRow(groupBoxH); //Ajout de la boite au layout
layoutSelectWindow.addRow(buttonBox); //Ajout de la boite au layout
buttonBox.accepted.connect(selectWindow.accept/*Accepte la boite*/); //Si clique sur OK
buttonBox.rejected.connect(selectWindow.reject/*Ferme la boite*/); //Si clique sur Annuler
if (selectWindow.exec()) { //Si la réponse a été accepté
for (var i = 0; i < radioButtonM.length; i++) {
if (radioButtonM[i].checked) //Si le bouton est checké
Console.print(radioButtonM[i].text); //Récupération de sa valeur
}
for (var i = 0; i < radioButtonH.length; i++) {
if (radioButtonH[i].checked) //Si le bouton est checké
Console.print(radioButtonH[i].text); //Récupération de sa valeur
}
}