PyQt5 – QLabel小工具
QLabel对象作为一个占位符来显示不可编辑的文本或图像,或GIF动画的影片。它也可以作为其他小工具的记忆键使用。普通文本、超链接或富文本都可以在标签上显示。
下表列出了QLabel类中定义的重要方法—-。
下面是QLabel最常使用的方法。
Sr.No. | 方法和描述 |
---|---|
1 | setAlignment() 按照对齐方式常数Qt.AlignLeft Qt.AlignRight Qt.AlignCenter Qt.AlignJustify来对齐文本。 |
2 | setIndent() 设置标签文本的缩进。 |
3 | setPixmap() 显示一个图像 |
4 | Text() 显示标签的标题。 |
5 | setText() 以编程方式设置标题。 |
6 | selectedText() 显示从标签中选择的文本(textInteractionFlag必须被设置为TextSelectableByMouse)。 |
7 | setBuddy() 将标签与任何输入部件联系起来 |
8 | setWordWrap() 启用或禁用标签中的文字包装。 |
QLabel类的信号
linkActivated | 如果包含嵌入式超链接的标签被点击,该URL将被打开。 setOpenExternalLinks功能必须被设置为true。 |
---|---|
linkHovered | 当嵌入超链接的标签被鼠标悬停时,与该信号相关的插槽方法将被调用。 |
示例
在这个例子中,QLabel对象l2和l4有包含超链接的标题。l2的setOpenExternalLinks被设置为true。l4的linkHovered信号被连接到hovered()函数。因此,每当鼠标悬停在它上面,该函数就会被执行。
QPixmap对象从Python.jpg文件中准备了屏外图像。通过使用setPixmap()方法,它被显示为标签l3。
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
def window():
app = QApplication(sys.argv)
win = QWidget()
l1 = QLabel()
l2 = QLabel()
l3 = QLabel()
l4 = QLabel()
l1.setText("Hello World")
l4.setText("TutorialsPoint")
l2.setText("welcome to Python GUI Programming")
l1.setAlignment(Qt.AlignCenter)
l3.setAlignment(Qt.AlignCenter)
l4.setAlignment(Qt.AlignRight)
l3.setPixmap(QPixmap("python.jpg"))
vbox = QVBoxLayout()
vbox.addWidget(l1)
vbox.addStretch()
vbox.addWidget(l2)
vbox.addStretch()
vbox.addWidget(l3)
vbox.addStretch()
vbox.addWidget(l4)
l1.setOpenExternalLinks(True)
l4.linkActivated.connect(clicked)
l2.linkHovered.connect(hovered)
l1.setTextInteractionFlags(Qt.TextSelectableByMouse)
win.setLayout(vbox)
win.setWindowTitle("QLabel Demo")
win.show()
sys.exit(app.exec_())
def hovered():
print "hovering"
def clicked():
print "clicked"
if __name__ == '__main__':
window()
输出
上述代码产生了以下输出 —