QLabel对象作为一个占位符可以显示不可编辑的文本或者图片,也可以放一个gif动画,还可以作为其他控件的一个提示标记(如QComboBox下拉列表框、组合下拉框?);
该标签可以放纯文本,链接或者富文本信息;
继承关系
详细描述
QLabel用于显示文本或图像。 没有提供用户交互功能。 标签的视觉外观可以通过各种方式进行配置,并且可以用于为另一个窗口小部件指定焦点助记键。
QLabel可以包含以下任何内容类型:
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() . |
警告:
当将QString传递给构造函数或调用setText()时,请确保清理您的输入,因为QLabeltries猜测它是将文本显示为纯文本还是富文本(HTML
4标记的子集)。 您可能需要显式调用setTextFormat(),例如
如果您希望文本为纯格式,但无法控制文本源(例如,当显示从Web加载的数据时)。
使用这些功能中的任何一个更改内容时,将清除以前的所有内容。
默认情况下,标签显示左对齐,垂直居中的文本和图像,其中要显示的文本中的所有选项卡都会自动展开。 但是,QLabel的外观可以通过几种方式进行调整和微调。
可以使用setAlignment()和setIndent()来调整QLabel小部件区域内内容的位置。 文本内容还可以使用setWordWrap()沿单词边界换行。 例如,此代码设置了一个下沉的面板,该面板的右下角有两行文字(两行与标签的右侧齐平):
label = QLabel(self)
label.setFrameStyle(QFrame.Panel | QFrame.Sunken)
label.setText("first line\nsecond line")
label.setAlignment(Qt.AlignBottom | Qt.AlignRight)
QLabel从QFrame继承的属性和函数也可以用于指定要用于任何给定标签的小部件框架。
QLabel通常用作交互式窗口小部件的标签。 对于此用途,QLabel提供了一种有用的机制来添加助记符(请参阅QKeySequence),该助记符会将键盘焦点设置到其他小部件(称为QLabel的“伙伴”)。 例如:
phoneEdit = QLineEdit(self)
phoneLabel = QLabel("&Phone:", self)
phoneLabel.setBuddy(phoneEdit)
在此示例中,当用户按下Alt + P时,键盘焦点转移到了标签的好友(QLineEdit)上。 如果伙伴是按钮(从QAbstractButton继承),则触发助记符将模拟按钮单击。
See also
QLineEditQTextEditQPixmapQMovieGUI Design Handbook: Label
class QLabel([parent=None[, f=Qt.WindowFlags()]])¶
QLabel(text[, parent=None[, f=Qt.WindowFlags()]])
param f
WindowFlags
param parent
QWidget
param text
unicode
构造一个空标签。
将parent和widget标志f传递给QFrame构造函数。
See also
setAlignment()setFrameStyle()setIndent()
构造一个显示文本text的标签。
将parent和widget标志f传递给QFrame构造函数。
See also
setText()setAlignment()setFrameStyle()setIndent()