PyQt QLabel小部件

PyQt QLabel小部件

QLabel 对象用作显示非编辑文本、图像或动画GIF的占位符。它还可以用作其他小部件的助记符键。标签上可以显示普通文本、超链接或富文本。

下表列出了QLabel类中定义的重要方法。

以下是QLabel最常用的方法。

编号 方法与描述
1 setAlignment() 根据对齐常量对文本进行对齐 Qt.AlignLeft Qt.AlignRight Qt.AlignCenter Qt.AlignJustify
2 setIndent() 设置标签文本的缩进
3 setPixmap() 显示图像
4 Text() 显示标签的标题
5 setText() 以编程方式设置标题
6 selectedText() 显示标签中选定的文本(文本交互标志必须设置为TextSelectableByMouse)
7 setBuddy() 将标签与任何输入小部件相关联
8 setWordWrap() 启用或禁用标签中的文本换行

QLabel类的信号

linkActivated 如果被点击的包含嵌入超链接的标签,将会打开对应的URL。setOpenExternalLinks特性必须设置为true。
linkHovered 当鼠标悬停在包含嵌入超链接的标签上时,与该信号关联的槽方法将被调用。

示例

在本示例中,QLabel对象l2和l4的标题包含超链接。l2的setOpenExternalLinks设置为true。因此,如果点击这个标签,关联的URL将在浏览器中打开。l4的linkHovered信号连接到hovered()函数。因此,无论鼠标悬停在标签上时,该函数都将被执行。

QPixmap对象从python.jpg文件准备离屏图像。使用setPixmap()方法将其显示为标签l3。

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui 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()

上面的代码产生以下输出 −

PyQt QLabel小部件

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程