QLabel标签控件是一个经常都要用到的控件,下面是它涉及到的常用方法与事件:
- setAlignment():设置文本的对齐方式,在Qt中
- setIndent():设置文本缩进
- text():获取文本内容
- setBuddy():设置伙伴关系
- setText():设置文本内容
- selectedText():返回所选择的字符
- setWordWrap():设置是否允许换行
- adjustSize():控件根据内容调整尺寸
事件:
- linkHovered:鼠标滑过
- linkActivated:鼠标单击
import sysfrom PyQt5.QtWidgets import QLabel,QWidget,QVBoxLayout,QApplicationfrom PyQt5.QtGui import QPalette,QPixmapfrom PyQt5.QtCore import Qtclass QLabelDemo(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): # 创建label,参数为self self.label1 = QLabel(self) self.label2 = QLabel(self) self.label3 = QLabel(self) self.label4 = QLabel(self) # 设置label标签文本,标签文本可以是HTML代码 self.label1.setText("<font color=yellow>这是一个文本标签.</font>") self.label1.setAutoFillBackground(True) patette = QPalette() # Qt中有很多变量 patette.setColor(QPalette.Window,Qt.blue) self.label1.setPalette(patette) # 设定对齐方式 self.label1.setAlignment(Qt.AlignCenter) self.label2.setText("<a href='#'>欢迎使用Python GUI程序</a>") self.label3.setAlignment(Qt.AlignCenter) # 设置提示内容 self.label3.setToolTip("这是一个图片标签") # 设置图片 self.label3.setPixmap(QPixmap("./images/python.jpg" title="qlabel自动换行方法(idea自动换行设置方法)")) # 如果为false则调用槽函数 self.label4.setOpenExternalLinks(True) self.label4.setText("<a href='https://item.jd.com/12417265.html'>感谢关注</a>") self.label4.setAlignment(Qt.AlignRight) self.label4.setToolTip("这是一个超级链接") # 创建一个垂直布局 vbox = QVBoxLayout(self) vbox.addWidget(self.label1) vbox.addWidget(self.label2) vbox.addWidget(self.label3) vbox.addWidget(self.label4) # 绑定信号 self.label2.linkHovered.connect(self.linkHovered) self.label4.linkActivated.connect(self.linkClicked) self.setLayout(vbox) self.setWindowTitle("QLabel控件展示") def linkHovered(self): print("鼠标滑过label2") def linkClicked(self): print("鼠标单击label4")if __name__ == '__main__': app = QApplication(sys.argv) label = QLabelDemo() label.show() sys.exit(app.exec_())