IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PyQt Python Discussion :

longueur d'un QLabel dans un QFormLayout


Sujet :

PyQt Python

  1. #1
    Membre éclairé
    Homme Profil pro
    BTS SN IR
    Inscrit en
    Mai 2017
    Messages
    513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SN IR

    Informations forums :
    Inscription : Mai 2017
    Messages : 513
    Points : 700
    Points
    700
    Par défaut longueur d'un QLabel dans un QFormLayout
    Bonjour, j'ai un problème avec QFormLayout :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    		self.dict_caisse = {}
    		self.list_caisse = ("pièce de 1c", "pièce de 2c", "pièce de 5c", "pièce de 10c", "pièce de 20c", "pièce de 50c", "pièce de 1€", "pièce de 2€", "billet de 5€", "billet de 10€", "billet de 20€", "billet de 50€", "billet de 100€", "billet de 200€", "billet de 500€", "CB", "chèque")
     
    		for i in self.list_caisse:
    			self.dict_caisse[i] = QtWidgets.QLineEdit()
    			self.caisse_layout.addRow(i, self.dict_caisse[i])
    Nom : tmp.png
Affichages : 414
Taille : 11,4 Ko

    et j'ai 2 problèmes :
    - les Qlabel n'ont pas la même taille, donc pas la même bordure
    - ils ne sont pas centrés

    est-ce qu'il vaudrait mieux utiliser une QGridLayout à la place d'un QFormLayout(qui est quand même fait pour ça .. ) ?


    EDIT : j'ai modifié mon code pour utilsier un QGridLayout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    		self.dict_caisse = {}
    		self.list_caisse = ("pièce de 1c", "pièce de 2c", "pièce de 5c", "pièce de 10c", "pièce de 20c", "pièce de 50c", "pièce de 1€", "pièce de 2€", "billet de 5€", "billet de 10€", "billet de 20€", "billet de 50€", "billet de 100€", "billet de 200€", "billet de 500€", "CB", "chèque")
     
    		for i in self.list_caisse:
    			self.caisse_layout.addWidget(QtWidgets.QLabel(text=i), self.list_caisse.index(i), 0)
    			self.dict_caisse[i] = QtWidgets.QLineEdit()
    			self.caisse_layout.addWidget( self.dict_caisse[i], self.list_caisse.index(i), 1)
    Nom : tmp.png
Affichages : 354
Taille : 11,2 Ko

    mon texte dans les QLabel n'est toujours pas centré :'(
    Si quelqu'un à la solution pour faire .setAlignment() sur un objet non instancié dans ma boucle for je suis preneur... mais je préfère utiliser un stylesheet dans fichier css bien à part

    utiliser des buttons non cliquable est une bonne idée ? c'est les seuls widgets à ma connaissance qui centre le texte de base

    EDIT 2 : voici mon css, tout est bon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    QLabel {
    	qproperty-alignment: AlignCenter;
    	padding-left: 10;
    	padding-right: 10;
    	border: 1 solid black;
    	font: 75 10pt "Trebuchet MS";
    }

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut
    Bonjour,

    Je ne connais pas QT, mais en regardant vite fait, je pense qu'il faut qu'avant ta boucle for tu travailles sur le Qlabel un truc dans ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    label = QtGui.QLabel("Mon texte blablabla")
    label.setAlignment(QtCore.Qt.AlignCenter| QtCore.Qt.AlignVCenter)
    Voilà j'espère que ça résoudra ton problème

Discussions similaires

  1. longueur d'une table dans un DataSet
    Par SirTurbo dans le forum ASP.NET
    Réponses: 1
    Dernier message: 06/09/2007, 00h38
  2. Réponses: 2
    Dernier message: 11/05/2007, 15h33
  3. [VBA-E] Limitation de la longueur d'une chaine dans Shapes
    Par padre03 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 07/12/2006, 00h52
  4. [D7] Longueur du texte saisi dans un Tedit
    Par Thierry Laborde dans le forum Delphi
    Réponses: 6
    Dernier message: 11/07/2006, 19h08
  5. Longueur d'un VARCHAR dans proc stock
    Par HurtMarley dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 07/07/2006, 10h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo