PyQt/QLabel
Description
[modifier | modifier le wikicode]Cette classe permet d'afficher au choix du texte ou une image, tout en spécifiant plusieurs paramètres concernant l'apparence visuelle de l'objet. Il est possible d'afficher du texte simple, du texte contenant des informations de mise en page, une image (pixmap), une vidéo, un nombre (converti en chaîne de caractères automatiquement) ou bien mettre un QLabel vide. Les changements concernant l'apparence de l'objet portent sur l'alignement dans son widget parent et l'indentation du texte. De plus, il est possible de définir des touches accélératrices permettant de transférer le focus du clavier.
Il est possible de mettre simplement en forme le texte. Qt utilise pour cela un sous-ensemble de balises HTML. Pour de plus amples informations consultez la page http://qt-project.org/doc/qt-4.8/q3stylesheet.html. html qui défini l'ensemble des balises disponibles et leurs effets sur le texte.
Constructeur
[modifier | modifier le wikicode]# Constructeurs pour la classe QLabel
QLabel ( QWidget parent, str name = "", WFlags f = 0 )
QLabel ( Qstr text, QWidget parent, str name = "", WFlags f = 0 )
QLabel ( QWidget buddy, Qstr text, QWidget parent, str name = "", WFlags f = 0 )
Exemple
[modifier | modifier le wikicode]
PyQt3.* #!/usr/bin/python
# -*- coding: utf-8 -*-
#
# qlabel.py
# Programme exemple pour la classe QLabel
from qt import *
import sys
class Demo(QApplication) :
def init (self,args) :
QApplication. init (self, args)
# widget principal, il s'agit d'une fenˆetre de dialogue
self.dialog = QDialog(None, "Dialog")
# premier élément textuel, nom de l'objet = ”text1”
self.text1 = QLabel(self.dialog,"text1")
# taille de l'objet et positionnement absolu
self.text1.setGeometry(QRect(120,80,181,71))
# le texte `a afficher
self.text1.setText("Le texte \ntient sur \nplusieurs lignes !")
# mise en page : très facile !
self.text2 = QLabel(self.dialog,"text2")
self.text2.setText("<h1><span style="color:red">Et la mise en page\n"+ " est possible</span></h1>")
self.text2.setGeometry(QRect(120,220,191,101))
self.connect(self,SIGNAL("lastWindowClosed()"),self,SLOT("quit()"))
self.dialog.show()
self.exec loop()
if name == "__main__" :
x = Demo(sys.argv)
PyQt4.* #!/usr/bin/python
# -*- coding: utf-8 -*-
#
# qlabel.py
# Programme exemple pour la classe QLabel
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import sys
class Demo(QApplication) :
def __init__(self,args) :
QApplication.__init__(self, args)
# widget principal, il s'agit d'une fenˆetre de dialogue
self.dialog = QDialog()
self.dialog.setWindowTitle("Dialog")
# premier élément textuel, nom de l'objet = ”text1”
self.text1 = QLabel(self.dialog)
# taille de l'objet et positionnement absolu
self.text1.setGeometry(QRect(120,80,180,70))
# le texte `a afficher
self.text1.setText("Le texte \ntient sur \nplusieurs lignes !")
# mise en page : très facile !
self.text2 = QLabel(self.dialog)
self.text2.setText("<h1><span style="color:red">Et la mise en page<br>"+ " est possible</span></h1>")
self.text2.setGeometry(QRect(120,220,250,100))
self.connect(self,SIGNAL("lastWindowClosed()"),self,SLOT("quit()"))
self.dialog.show()
self.exec_()
if __name__ == "__main__" :
x = Demo(sys.argv)
|