QLabel¶
The QLabel
widget provides a text or image display. More…
Synopsis¶
Functions¶
def
alignment
()def
buddy
()def
hasScaledContents
()def
hasSelectedText
()def
indent
()def
margin
()def
movie
()def
openExternalLinks
()def
picture
()def
pixmap
()def
selectedText
()def
selectionStart
()def
setAlignment
(arg__1)def
setBuddy
(arg__1)def
setIndent
(arg__1)def
setMargin
(arg__1)def
setOpenExternalLinks
(open)def
setScaledContents
(arg__1)def
setSelection
(arg__1, arg__2)def
setTextFormat
(arg__1)def
setTextInteractionFlags
(flags)def
setWordWrap
(on)def
text
()def
textFormat
()def
textInteractionFlags
()def
wordWrap
()
Slots¶
Signals¶
def
linkActivated
(link)def
linkHovered
(link)
Detailed Description¶
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
tosetText()
.Rich text
Pass a
QString
that contains rich text tosetText()
.A pixmap
Pass a
QPixmap
tosetPixmap()
.A movie
Pass a
QMovie
tosetMovie()
.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()
.
Warning
When passing a QString
to the constructor or calling setText()
, make sure to sanitize your input, as QLabel
tries to guess whether it displays the text as plain text or as rich text, a subset of HTML 4 markup. You may want to call setTextFormat()
explicitly, e.g. in case you expect the text to be in plain format but cannot control the text source (for instance when displaying data loaded from the Web).
When the content is changed using any of these functions, any previous content is cleared.
By default, labels display left-aligned, vertically-centered text and images, where any tabs in the text to be displayed are automatically expanded
. However, the look of a QLabel
can be adjusted and fine-tuned in several ways.
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 boundaries 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):
label = QLabel(self) label.setFrameStyle(QFrame.Panel | QFrame.Sunken) label.setText("first line\nsecond line") label.setAlignment(Qt.AlignBottom | Qt.AlignRight)
The properties and functions QLabel
inherits from QFrame
can also be used to specify the widget frame to be used for any given label.
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:
phoneEdit = QLineEdit(self) phoneLabel = QLabel("Phone:", self) 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.
- class PySide6.QtWidgets.QLabel([parent=None[, f=Qt.WindowFlags()]])¶
PySide6.QtWidgets.QLabel(text[, parent=None[, f=Qt.WindowFlags()]])
- Parameters
text – str
f –
WindowFlags
parent –
PySide6.QtWidgets.QWidget
Constructs an empty label.
The parent
and widget flag f
, arguments are passed to the QFrame
constructor.
See also
Constructs a label that displays the text, text
.
The parent
and widget flag f
, arguments are passed to the QFrame
constructor.
- PySide6.QtWidgets.QLabel.alignment()¶
- Return type
Alignment
This property holds the alignment of the label’s contents.
By default, the contents of the label are left-aligned and vertically-centered.
See also
- PySide6.QtWidgets.QLabel.buddy()¶
- Return type
Returns this label’s buddy, or nullptr if no buddy is currently set.
See also
- PySide6.QtWidgets.QLabel.clear()¶
Clears any label contents.
- PySide6.QtWidgets.QLabel.hasScaledContents()¶
- Return type
bool
This property holds whether the label will scale its contents to fill all available space..
When enabled and the label shows a pixmap, it will scale the pixmap to fill the available space.
This property’s default is false.
- PySide6.QtWidgets.QLabel.hasSelectedText()¶
- Return type
bool
This property holds whether there is any text selected.
returns true
if some or all of the text has been selected by the user; otherwise returns false
.
By default, this property is false
.
Note
The textInteractionFlags
set on the label need to include either TextSelectableByMouse or TextSelectableByKeyboard.
See also
- PySide6.QtWidgets.QLabel.indent()¶
- Return type
int
This property holds the label’s text indent in pixels.
If a label displays text, the indent applies to the left edge if alignment()
is AlignLeft
, to the right edge if alignment()
is AlignRight
, to the top edge if alignment()
is AlignTop
, and to the bottom edge if alignment()
is AlignBottom
.
If indent is negative, or if no indent has been set, the label computes the effective indent as follows: If frameWidth()
is 0, the effective indent becomes 0. If frameWidth()
is greater than 0, the effective indent becomes half the width of the “x” character of the widget’s current font()
.
By default, the indent is -1, meaning that an effective indent is calculating in the manner described above.
See also
alignment
margin
frameWidth()
font()
- PySide6.QtWidgets.QLabel.linkActivated(link)¶
- Parameters
link – str
- PySide6.QtWidgets.QLabel.linkHovered(link)¶
- Parameters
link – str
- PySide6.QtWidgets.QLabel.margin()¶
- Return type
int
This property holds the width of the margin.
The margin is the distance between the innermost pixel of the frame and the outermost pixel of contents.
The default margin is 0.
See also
- PySide6.QtWidgets.QLabel.movie()¶
- Return type
Returns a pointer to the label’s movie, or nullptr if no movie has been set.
See also
- PySide6.QtWidgets.QLabel.openExternalLinks()¶
- Return type
bool
Specifies whether QLabel
should automatically open links using openUrl()
instead of emitting the linkActivated()
signal.
Note
The textInteractionFlags
set on the label need to include either LinksAccessibleByMouse or LinksAccessibleByKeyboard.
The default value is false.
See also
- PySide6.QtWidgets.QLabel.picture()¶
- Return type
Returns the label’s picture.
- PySide6.QtWidgets.QLabel.pixmap()¶
- Return type
This property holds the label’s pixmap..
Setting the pixmap clears any previous content. The buddy shortcut, if any, is disabled.
- PySide6.QtWidgets.QLabel.selectedText()¶
- Return type
str
This property holds the selected text.
If there is no selected text this property’s value is an empty string.
By default, this property contains an empty string.
Note
The textInteractionFlags
set on the label need to include either TextSelectableByMouse or TextSelectableByKeyboard.
See also
- PySide6.QtWidgets.QLabel.selectionStart()¶
- Return type
int
returns the index of the first selected character in the label or -1 if no text is selected.
Note
The textInteractionFlags
set on the label need to include either TextSelectableByMouse or TextSelectableByKeyboard.
See also
- PySide6.QtWidgets.QLabel.setAlignment(arg__1)¶
- Parameters
arg__1 –
Alignment
This property holds the alignment of the label’s contents.
By default, the contents of the label are left-aligned and vertically-centered.
See also
- PySide6.QtWidgets.QLabel.setBuddy(arg__1)¶
- Parameters
arg__1 –
PySide6.QtWidgets.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 mnemonic()
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:
nameEdit = QLineEdit(self) QLabel nameLabel = QLabel("Name:", self) nameLabel.setBuddy(nameEdit) phoneEdit = QLineEdit(self) QLabel phoneLabel = QLabel("Phone:", self) phoneLabel.setBuddy(phoneEdit) # (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 nullptr.
See also
buddy()
setText()
QShortcut
setAlignment()
- PySide6.QtWidgets.QLabel.setIndent(arg__1)¶
- Parameters
arg__1 – int
This property holds the label’s text indent in pixels.
If a label displays text, the indent applies to the left edge if alignment()
is AlignLeft
, to the right edge if alignment()
is AlignRight
, to the top edge if alignment()
is AlignTop
, and to the bottom edge if alignment()
is AlignBottom
.
If indent is negative, or if no indent has been set, the label computes the effective indent as follows: If frameWidth()
is 0, the effective indent becomes 0. If frameWidth()
is greater than 0, the effective indent becomes half the width of the “x” character of the widget’s current font()
.
By default, the indent is -1, meaning that an effective indent is calculating in the manner described above.
See also
alignment
margin
frameWidth()
font()
- PySide6.QtWidgets.QLabel.setMargin(arg__1)¶
- Parameters
arg__1 – int
This property holds the width of the margin.
The margin is the distance between the innermost pixel of the frame and the outermost pixel of contents.
The default margin is 0.
See also
- PySide6.QtWidgets.QLabel.setMovie(movie)¶
- Parameters
movie –
PySide6.QtGui.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
- PySide6.QtWidgets.QLabel.setNum(arg__1)¶
- Parameters
arg__1 –
double
This is an overloaded function.
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()
setNum()
setBuddy()
- PySide6.QtWidgets.QLabel.setNum(arg__1)
- Parameters
arg__1 – int
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()
setNum()
setBuddy()
- PySide6.QtWidgets.QLabel.setOpenExternalLinks(open)¶
- Parameters
open – bool
Specifies whether QLabel
should automatically open links using openUrl()
instead of emitting the linkActivated()
signal.
Note
The textInteractionFlags
set on the label need to include either LinksAccessibleByMouse or LinksAccessibleByKeyboard.
The default value is false.
See also
- PySide6.QtWidgets.QLabel.setPicture(arg__1)¶
- Parameters
arg__1 –
PySide6.QtGui.QPicture
Sets the label contents to picture
. Any previous content is cleared.
The buddy shortcut, if any, is disabled.
See also
- PySide6.QtWidgets.QLabel.setPixmap(arg__1)¶
- Parameters
arg__1 –
PySide6.QtGui.QPixmap
This property holds the label’s pixmap..
Setting the pixmap clears any previous content. The buddy shortcut, if any, is disabled.
- PySide6.QtWidgets.QLabel.setScaledContents(arg__1)¶
- Parameters
arg__1 – bool
This property holds whether the label will scale its contents to fill all available space..
When enabled and the label shows a pixmap, it will scale the pixmap to fill the available space.
This property’s default is false.
- PySide6.QtWidgets.QLabel.setSelection(arg__1, arg__2)¶
- Parameters
arg__1 – int
arg__2 – int
Selects text from position start
and for length
characters.
Note
The textInteractionFlags
set on the label need to include either TextSelectableByMouse or TextSelectableByKeyboard.
See also
- PySide6.QtWidgets.QLabel.setText(arg__1)¶
- Parameters
arg__1 – str
This property holds the label’s text.
If no text has been set this will return an empty string. Setting the text clears any previous content.
The text will be interpreted either as plain text or as rich text, depending on the text format setting; see setTextFormat()
. The default setting is AutoText
; i.e. QLabel
will try to auto-detect the format of the text set. See Supported HTML Subset for the definition of rich text.
If a buddy has been set, the buddy mnemonic key is updated from the new text.
Note that QLabel
is well-suited to display small rich text documents, such as small documents that get their document specific settings (font, text color, link color) from the label’s palette and font properties. For large documents, use QTextEdit
in read-only mode instead. QTextEdit
can also provide a scroll bar when necessary.
Note
This function enables mouse tracking if text
contains rich text.
See also
- PySide6.QtWidgets.QLabel.setTextFormat(arg__1)¶
- Parameters
arg__1 –
TextFormat
This property holds the label’s text format.
See the TextFormat
enum for an explanation of the possible options.
The default format is AutoText
.
See also
- PySide6.QtWidgets.QLabel.setTextInteractionFlags(flags)¶
- Parameters
flags –
TextInteractionFlags
Specifies how the label should interact with user input if it displays text.
If the flags contain LinksAccessibleByKeyboard
the focus policy is also automatically set to StrongFocus
. If TextSelectableByKeyboard
is set then the focus policy is set to ClickFocus
.
The default value is LinksAccessibleByMouse
.
- PySide6.QtWidgets.QLabel.setWordWrap(on)¶
- Parameters
on – bool
This property holds the label’s word-wrapping policy.
If this property is true
then label text is wrapped where necessary at word-breaks; otherwise it is not wrapped at all.
By default, word wrap is disabled.
See also
- PySide6.QtWidgets.QLabel.text()¶
- Return type
str
This property holds the label’s text.
If no text has been set this will return an empty string. Setting the text clears any previous content.
The text will be interpreted either as plain text or as rich text, depending on the text format setting; see setTextFormat()
. The default setting is AutoText
; i.e. QLabel
will try to auto-detect the format of the text set. See Supported HTML Subset for the definition of rich text.
If a buddy has been set, the buddy mnemonic key is updated from the new text.
Note that QLabel
is well-suited to display small rich text documents, such as small documents that get their document specific settings (font, text color, link color) from the label’s palette and font properties. For large documents, use QTextEdit
in read-only mode instead. QTextEdit
can also provide a scroll bar when necessary.
Note
This function enables mouse tracking if text
contains rich text.
See also
- PySide6.QtWidgets.QLabel.textFormat()¶
- Return type
This property holds the label’s text format.
See the TextFormat
enum for an explanation of the possible options.
The default format is AutoText
.
See also
- PySide6.QtWidgets.QLabel.textInteractionFlags()¶
- Return type
TextInteractionFlags
Specifies how the label should interact with user input if it displays text.
If the flags contain LinksAccessibleByKeyboard
the focus policy is also automatically set to StrongFocus
. If TextSelectableByKeyboard
is set then the focus policy is set to ClickFocus
.
The default value is LinksAccessibleByMouse
.
- PySide6.QtWidgets.QLabel.wordWrap()¶
- Return type
bool
This property holds the label’s word-wrapping policy.
If this property is true
then label text is wrapped where necessary at word-breaks; otherwise it is not wrapped at all.
By default, word wrap is disabled.
See also
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.