QLabel¶
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 callingsetText()
, make sure to sanitize your input, asQLabel
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 callsetTextFormat()
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 aQLabel
can be adjusted and fine-tuned in several ways.The positioning of the content within the
QLabel
widget area can be tuned withsetAlignment()
andsetIndent()
. Text content can also wrap lines along word boundaries withsetWordWrap()
. 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 fromQFrame
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 useQLabel
provides a useful mechanism for adding an mnemonic (seeQKeySequence
) that will set the keyboard focus to the other widget (called theQLabel
‘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 fromQAbstractButton
), triggering the mnemonic would emulate a button click.See also
QLineEdit
QTextEdit
QPixmap
QMovie
GUI Design Handbook: Label
- class PySide2.QtWidgets.QLabel([parent=None[, f=Qt.WindowFlags()]])¶
PySide2.QtWidgets.QLabel(text[, parent=None[, f=Qt.WindowFlags()]])
- param f:
WindowFlags
- param parent:
- param text:
str
Constructs an empty label.
The
parent
and widget flagf
, arguments are passed to theQFrame
constructor.See also
Constructs a label that displays the text,
text
.The
parent
and widget flagf
, arguments are passed to theQFrame
constructor.
- PySide2.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
- PySide2.QtWidgets.QLabel.buddy()¶
- Return type:
Returns this label’s buddy, or nullptr if no buddy is currently set.
See also
- PySide2.QtWidgets.QLabel.clear()¶
Clears any label contents.
- PySide2.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.
- PySide2.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 returnsfalse
.By default, this property is
false
.Note
The
textInteractionFlags
set on the label need to include either TextSelectableByMouse or TextSelectableByKeyboard.See also
- PySide2.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()
isAlignLeft
, to the right edge ifalignment()
isAlignRight
, to the top edge ifalignment()
isAlignTop
, and to the bottom edge ifalignment()
isAlignBottom
.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. IfframeWidth()
is greater than 0, the effective indent becomes half the width of the “x” character of the widget’s currentfont()
.By default, the indent is -1, meaning that an effective indent is calculating in the manner described above.
See also
alignment
margin
frameWidth()
font()
- PySide2.QtWidgets.QLabel.linkActivated(link)¶
- Parameters:
link – str
- PySide2.QtWidgets.QLabel.linkHovered(link)¶
- Parameters:
link – str
- PySide2.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
- PySide2.QtWidgets.QLabel.movie()¶
- Return type:
Returns a pointer to the label’s movie, or nullptr if no movie has been set.
See also
- PySide2.QtWidgets.QLabel.openExternalLinks()¶
- Return type:
bool
Specifies whether
QLabel
should automatically open links usingopenUrl()
instead of emitting thelinkActivated()
signal.Note
The
textInteractionFlags
set on the label need to include either LinksAccessibleByMouse or LinksAccessibleByKeyboard.The default value is false.
See also
- PySide2.QtWidgets.QLabel.picture()¶
- Return type:
Note
This function is deprecated.
New code should use the other overload which returns
QPicture
by-value.This function returns the label’s picture or
nullptr
if the label doesn’t have a picture.See also
- PySide2.QtWidgets.QLabel.pixmap()¶
- Return type:
Note
This function is deprecated.
This property holds the label’s pixmap..
Previously, Qt provided a version of
pixmap()
which returned the pixmap by-pointer. That version is now deprecated. To maintain compatibility with old code, you can explicitly differentiate between the by-pointer function and the by-value function:const QPixmap *pixmapPtr = label->pixmap(); QPixmap pixmapVal = label->pixmap(Qt::ReturnByValue);
If you disable the deprecated version using the
QT_DISABLE_DEPRECATED_BEFORE
macro, then you can omitQt::ReturnByValue
as shown below:QPixmap pixmapVal = label->pixmap();
If no pixmap has been set, the deprecated getter function will return
nullptr
.Setting the pixmap clears any previous content. The buddy shortcut, if any, is disabled.
- PySide2.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
- PySide2.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
- PySide2.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
- PySide2.QtWidgets.QLabel.setBuddy(arg__1)¶
- Parameters:
arg__1 –
PySide2.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:
nameEd = QLineEdit(self) nameLb = QLabel("&Name:", self) nameLb.setBuddy(nameEd) phoneEd = QLineEdit(self) phoneLb = QLabel("&Phone:", self) 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 nullptr.See also
- PySide2.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()
isAlignLeft
, to the right edge ifalignment()
isAlignRight
, to the top edge ifalignment()
isAlignTop
, and to the bottom edge ifalignment()
isAlignBottom
.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. IfframeWidth()
is greater than 0, the effective indent becomes half the width of the “x” character of the widget’s currentfont()
.By default, the indent is -1, meaning that an effective indent is calculating in the manner described above.
See also
alignment
margin
frameWidth()
font()
- PySide2.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
- PySide2.QtWidgets.QLabel.setMovie(movie)¶
- Parameters:
movie –
PySide2.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
- PySide2.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()
- PySide2.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()
- PySide2.QtWidgets.QLabel.setOpenExternalLinks(open)¶
- Parameters:
open – bool
Specifies whether
QLabel
should automatically open links usingopenUrl()
instead of emitting thelinkActivated()
signal.Note
The
textInteractionFlags
set on the label need to include either LinksAccessibleByMouse or LinksAccessibleByKeyboard.The default value is false.
See also
- PySide2.QtWidgets.QLabel.setPicture(arg__1)¶
- Parameters:
arg__1 –
PySide2.QtGui.QPicture
Sets the label contents to
picture
. Any previous content is cleared.The buddy shortcut, if any, is disabled.
See also
- PySide2.QtWidgets.QLabel.setPixmap(arg__1)¶
- Parameters:
arg__1 –
PySide2.QtGui.QPixmap
This property holds the label’s pixmap..
Previously, Qt provided a version of
pixmap()
which returned the pixmap by-pointer. That version is now deprecated. To maintain compatibility with old code, you can explicitly differentiate between the by-pointer function and the by-value function:const QPixmap *pixmapPtr = label->pixmap(); QPixmap pixmapVal = label->pixmap(Qt::ReturnByValue);
If you disable the deprecated version using the
QT_DISABLE_DEPRECATED_BEFORE
macro, then you can omitQt::ReturnByValue
as shown below:QPixmap pixmapVal = label->pixmap();
If no pixmap has been set, the deprecated getter function will return
nullptr
.Setting the pixmap clears any previous content. The buddy shortcut, if any, is disabled.
- PySide2.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.
- PySide2.QtWidgets.QLabel.setSelection(arg__1, arg__2)¶
- Parameters:
arg__1 – int
arg__2 – int
Selects text from position
start
and forlength
characters.Note
The
textInteractionFlags
set on the label need to include either TextSelectableByMouse or TextSelectableByKeyboard.See also
- PySide2.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 isAutoText
; 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, useQTextEdit
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
- PySide2.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
- PySide2.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 toStrongFocus
. IfTextSelectableByKeyboard
is set then the focus policy is set toClickFocus
.The default value is
LinksAccessibleByMouse
.
- PySide2.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
- PySide2.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 isAutoText
; 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, useQTextEdit
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
- PySide2.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
- PySide2.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 toStrongFocus
. IfTextSelectableByKeyboard
is set then the focus policy is set toClickFocus
.The default value is
LinksAccessibleByMouse
.
© 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.