Home · All Classes · Modules

QLabel Class Reference
[QtGui module]

The QLabel widget provides a text or image display. More...

Inherits QFrame.

Methods

Qt Signals


Detailed Description

The QLabel widget provides a text or image display.

QLabel is used for displaying text or an image. No user interaction functionality is provided. The visual appearance of the label can be configured in various ways, and it can be used for specifying a focus mnemonic key for another widget.

A QLabel can contain any of the following content types:

Content Setting
Plain text Pass a QString to setText().
Rich text Pass a QString that contains rich text to setText().
A pixmap Pass a QPixmap to setPixmap().
A movie Pass a QMovie to setMovie().
A number Pass an int or a double to setNum(), which converts the number to plain text.
Nothing The same as an empty plain text. This is the default. Set by clear().


When the content is changed using any of these functions, any previous content is cleared.

The look of a QLabel can be tuned in several ways. All the settings of QFrame are available for specifying a widget frame. The positioning of the content within the QLabel widget area can be tuned with setAlignment() and setIndent(). Text content can also wrap lines along word bounderies with setWordWrap(). For example, this code sets up a sunken panel with a two-line text in the bottom right corner (both lines being flush with the right side of the label):

 QLabel *label = new QLabel(this);
 label->setFrameStyle(QFrame.Panel | QFrame.Sunken);
 label->setText("first line\nsecond line");
 label->setAlignment(Qt.AlignBottom | Qt.AlignRight);

A QLabel is often used as a label for an interactive widget. For this use QLabel provides a useful mechanism for adding an mnemonic (see QKeysequence) that will set the keyboard focus to the other widget (called the QLabel's "buddy"). For example:

 QLineEdit* phoneEdit = new QLineEdit(this);
 QLabel* phoneLabel = new QLabel("&Phone:", this);
 phoneLabel->setBuddy(phoneEdit);

In this example, keyboard focus is transferred to the label's buddy (the QLineEdit) when the user presses Alt+P. If the buddy was a button (inheriting from QAbstractButton), triggering the mnemonic would emulate a button click.

Screenshot of a Macintosh style label A label shown in the Macintosh widget style.
Screenshot of a Plastique style label A label shown in the Plastique widget style.
Screenshot of a Windows XP style label A label shown in the Windows XP widget style.


See also QLineEdit, QTextEdit, QPixmap, QMovie, and GUI Design Handbook: Label.


Method Documentation

QLabel.__init__ (self, QWidget parent = None, Qt.WindowFlags f = 0)

The parent argument, if not None, causes self to be owned by Qt instead of PyQt.

Constructs an empty label.

The parent and widget flag f, arguments are passed to the QFrame constructor.

See also setAlignment(), setFrameStyle(), and setIndent().

QLabel.__init__ (self, QString text, QWidget parent = None, Qt.WindowFlags f = 0)

The parent argument, if not None, causes self to be owned by Qt instead of PyQt.

Constructs a label that displays the text, text.

The parent and widget flag f, arguments are passed to the QFrame constructor.

See also setText(), setAlignment(), setFrameStyle(), and setIndent().

Qt.Alignment QLabel.alignment (self)

QWidget QLabel.buddy (self)

Returns this label's buddy, or 0 if no buddy is currently set.

See also setBuddy().

QLabel.changeEvent (self, QEvent)

QLabel.clear (self)

This method is also a Qt slot with the C++ signature void clear().

Clears any label contents.

QLabel.contextMenuEvent (self, QContextMenuEvent ev)

bool QLabel.event (self, QEvent e)

QLabel.focusInEvent (self, QFocusEvent ev)

bool QLabel.focusNextPrevChild (self, bool next)

QLabel.focusOutEvent (self, QFocusEvent ev)

bool QLabel.hasScaledContents (self)

int QLabel.heightForWidth (self, int)

int QLabel.indent (self)

QLabel.keyPressEvent (self, QKeyEvent ev)

int QLabel.margin (self)

QSize QLabel.minimumSizeHint (self)

QLabel.mouseMoveEvent (self, QMouseEvent ev)

QLabel.mousePressEvent (self, QMouseEvent ev)

QLabel.mouseReleaseEvent (self, QMouseEvent ev)

QMovie QLabel.movie (self)

Returns a pointer to the label's movie, or 0 if no movie has been set.

See also setMovie().

bool QLabel.openExternalLinks (self)

QLabel.paintEvent (self, QPaintEvent)

QPicture QLabel.picture (self)

Returns the label's picture or 0 if the label doesn't have a picture.

See also setPicture().

QPixmap QLabel.pixmap (self)

QLabel.setAlignment (self, Qt.Alignment)

QLabel.setBuddy (self, QWidget)

Sets this label's buddy to buddy.

When the user presses the shortcut key indicated by this label, the keyboard focus is transferred to the label's buddy widget.

The buddy mechanism is only available for QLabels that contain text in which one character is prefixed with an ampersand, '&'. This character is set as the shortcut key. See the QShortcut documentation for details (to display an actual ampersand, use '&&').

In a dialog, you might create two data entry widgets and a label for each, and set up the geometry layout so each label is just to the left of its data entry widget (its "buddy"), for example:

 QLineEdit *nameEd  = new QLineEdit(this);
 QLabel    *nameLb  = new QLabel("&Name:", this);
 nameLb->setBuddy(nameEd);
 QLineEdit *phoneEd = new QLineEdit(this);
 QLabel    *phoneLb = new QLabel("&Phone:", this);
 phoneLb->setBuddy(phoneEd);
 // (layout setup not shown)

With the code above, the focus jumps to the Name field when the user presses Alt+N, and to the Phone field when the user presses Alt+P.

To unset a previously set buddy, call this function with buddy set to 0.

See also buddy(), setText(), QShortcut, and setAlignment().

QLabel.setIndent (self, int)

QLabel.setMargin (self, int)

QLabel.setMovie (self, QMovie movie)

This method is also a Qt slot with the C++ signature void setMovie(QMovie *).

Sets the label contents to movie. Any previous content is cleared. The label does NOT take ownership of the movie.

The buddy shortcut, if any, is disabled.

See also movie() and setBuddy().

QLabel.setNum (self, float)

This method is also a Qt slot with the C++ signature void setNum(double).

Sets the label contents to plain text containing the textual representation of integer num. Any previous content is cleared. Does nothing if the integer's string representation is the same as the current contents of the label.

The buddy shortcut, if any, is disabled.

See also setText(), QString.setNum(), and setBuddy().

QLabel.setNum (self, int)

This method is also a Qt slot with the C++ signature void setNum(int).

This is an overloaded member function, provided for convenience.

Sets the label contents to plain text containing the textual representation of double num. Any previous content is cleared. Does nothing if the double's string representation is the same as the current contents of the label.

The buddy shortcut, if any, is disabled.

See also setText(), QString.setNum(), and setBuddy().

QLabel.setOpenExternalLinks (self, bool open)

QLabel.setPicture (self, QPicture)

This method is also a Qt slot with the C++ signature void setPicture(const QPicture&).

Sets the label contents to picture. Any previous content is cleared.

The buddy shortcut, if any, is disabled.

See also picture() and setBuddy().

QLabel.setPixmap (self, QPixmap)

This method is also a Qt slot with the C++ signature void setPixmap(const QPixmap&).

QLabel.setScaledContents (self, bool)

QLabel.setText (self, QString)

This method is also a Qt slot with the C++ signature void setText(const QString&).

QLabel.setTextFormat (self, Qt.TextFormat)

QLabel.setTextInteractionFlags (self, Qt.TextInteractionFlags flags)

QLabel.setWordWrap (self, bool on)

QSize QLabel.sizeHint (self)

QString QLabel.text (self)

Qt.TextFormat QLabel.textFormat (self)

Qt.TextInteractionFlags QLabel.textInteractionFlags (self)

bool QLabel.wordWrap (self)


Qt Signal Documentation

void linkActivated (const QString&)

This signal is emitted when the user clicks a link. The URL referred to by the anchor is passed in link.

This function was introduced in Qt 4.2.

See also linkHovered().

void linkHovered (const QString&)

This signal is emitted when the user hovers over a link. The URL referred to by the anchor is passed in link.

This function was introduced in Qt 4.2.

See also linkActivated().


PyQt 4.3.1 for X11Copyright © Riverbank Computing Ltd and Trolltech AS 2007Qt 4.3.0