J'ai quelques petites questions :
Qt ListWidget
J'ai créer une fenêtre à positionnement absolu, contenant 2 QListWidget, des boutons et un champ, voici un screen et son code pour le visualiser.
Code: Select all
var Fenetre = new QDialog();
Fenetre.setWindowTitle("Menu");
Fenetre.setFixedSize(500, 300);
var Liste_Verte = new QListWidget(Fenetre);
Liste_Verte.addItem("Samsung");
Liste_Verte.addItem("Iphone");
Liste_Verte.addItem("Nokia");
Liste_Verte.setGeometry(50, 100, 150, 100);
var Liste_Rouge = new QListWidget(Fenetre);
Liste_Rouge.addItem("Halo 1");
Liste_Rouge.addItem("Halo 2");
Liste_Rouge.setGeometry(300, 100, 150, 100);
var Verte = new QLabel("Liste verte", Fenetre);
Verte.move(95, 80);
var Rouge = new QLabel("Liste rouge", Fenetre);
Rouge.move(345, 80);
var Droite = new QPushButton(">>", Fenetre);
Droite.move(215, 125);
var Gauche = new QPushButton("<<", Fenetre);
Gauche.move(215, 150);
var Up = new QPushButton("Monter", Fenetre);
Up.move(50, 220);
var Down = new QPushButton("Descendre", Fenetre);
Down.move(125, 220);
var Champ = new QLineEdit(Fenetre);
Champ.move(185, 25);
var Ajout = new QPushButton("Ajouter", Fenetre);
Ajout.move(215, 50);
var Delete = new QPushButton("Supprimer", Fenetre);
Delete.move(87.5, 245);
Ajout.clicked.connect(function() {
Liste_Verte.addItem(Champ.text);
Champ.clear();
});
Gauche.clicked.connect(function() {
if (Liste_Rouge.currentRow<0) {
Console.print("Aucun élément selectionné");
}
else if (Liste_Rouge.count>0) {
Liste_Verte.addItem(Liste_Rouge.currentItem().text());
Liste_Rouge.takeItem(Liste_Rouge.currentRow);
}
});
Droite.clicked.connect(function() {
if (Liste_Verte.currentRow<0) {
Console.print("Aucun élément selectionné");
}
else if (Liste_Verte.count>0) {
Liste_Rouge.addItem(Liste_Verte.currentItem().text());
Liste_Verte.takeItem(Liste_Verte.currentRow);
}
});
Up.clicked.connect(function() {
var pos = Liste_Verte.currentRow;
if(pos == 0) return;
Liste_Verte.insertItem(pos - 1, Liste_Verte.currentItem().text());
Liste_Verte.takeItem(pos + 1);
Liste_Verte.currentRow = pos - 1;
});
Down.clicked.connect(function() {
var pos = Liste_Verte.currentRow;
if(pos >= Liste_Verte.count - 1) return;
Liste_Verte.insertItem(pos + 2, Liste_Verte.currentItem().text());
Liste_Verte.takeItem(pos);
Liste_Verte.currentRow = pos + 1;
});
Delete.clicked.connect(function() {
if (Liste_Verte.currentRow<0) {
Console.print("Aucun élément selectionné");
}
else {
Console.print(Liste_Verte.currentItem().text()+" est supprimé");
Liste_Verte.takeItem(Liste_Verte.currentRow);
Console.print("Il reste "+Liste_Verte.count+ " items");
}
});
Fenetre.exec();
- Supprimer un item sélectionné [Résolu]
- Déplacer un item sélectionné dans la liste de droite/gauche [Résolu]
- Monter/Descendre un item [Résolu]
- Éditer un item sélectionné [Non résolu] (bug d'actiona)
- Focus le bouton "Ajouter" lorsque j'écris dans le champ [Non résolu]
- Sélectionner plusieurs items afin de les déplacer à droite/gauche en même temps [Résolu partiellement] (je n'ai pas encore eu le temps d'adapter ce tuto) : https://openclassrooms.com/courses/prog ... -complexes
Qt LineEdit [Résolu]
Ici, une simple fenêtre contenant 2 champs, voici un screen et son code pour le visualiser.
Code: Select all
var Fenetre = new QDialog();
Fenetre.setWindowTitle("Connexion");
var Cadre = new QFormLayout();
Fenetre.setLayout(Cadre);
var Pseudo = new QLineEdit();
var Password = new QLineEdit();
Cadre.addRow("Pseudo", Pseudo);
Cadre.addRow("Password", Password);
Fenetre.exec();
J'ai cherché dans cette doc donnée par Violette : http://web.univ-pau.fr/~puiseux/enseign ... #ss_part_1, j'y est donc trouvé :
Code: Select all
lineEdit->setEchoMode(QLineEdit::Password);
Voilà tout.
Je vous remercie pour votre aide.
Cordialement
Sergent-Quentin