当前位置: 代码迷 >> 综合 >> PyQt5基本窗口控件-----QLabel
  详细解决方案

PyQt5基本窗口控件-----QLabel

热度:45   发布时间:2024-01-26 16:33:12.0

PyQt5学习之路,点击有pyqt5学习笔记

QLabel可以显示不可编辑的文本或图片,也可以被用作提示标记为其他控件,继承自QFrame。
  1. 常用的方法
  • setAlignment():设置文本的对齐方式
  • setIndent():设置文本缩进
  • text():获取文本内容
  • setBuddy():设置伙伴关系
  • setText():设置文本内容
  • selectedText():返回所选择的字符
  • setWordWrap():设置是否允许换行
  1. 常用的信号(事件)
  • 当鼠标划过QLabel控件时触发:linkHovered
  • 当鼠标单击QLabel控件时出发:linkActivated
label标签的几种使用
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QMainWindow, QApplication, QDesktopWidget, QVBoxLayout, QWidget, QPushButton, QLabel
from PyQt5.QtGui import QPalette,QPixmapclass QLabelDemo(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):label1 = QLabel(self)label2 = QLabel(self)label3 = QLabel(self)label4 = QLabel(self)label1.setText("<font color=yellow>这是一个文本标签</font>")# 填充整个屏幕label1.setAutoFillBackground(True)patette = QPalette()# 调色板,设置背景色patette.setColor(QPalette.Window, Qt.blue)label1.setPalette(patette)# 设置文本对齐方式label1.setAlignment(Qt.AlignCenter)label2.setText("<a href='#'>欢迎使用Python GUI程序</a>")label3.setAlignment(Qt.AlignCenter)label3.setToolTip('这是一个图片标签')label3.setPixmap(QPixmap("about_us_bk.jpg"))# 如果设为True,用浏览器打开,如果设为False,调用槽函数label4.setOpenExternalLinks(True)label4.setText('<a href=www.baidu.com>面向百度编程</a>')label4.setAlignment(Qt.AlignRight)label4.setToolTip('这是一个超级链接')vbox = QVBoxLayout()vbox.addWidget(label1)vbox.addWidget(label2)vbox.addWidget(label3)vbox.addWidget(label4)label2.linkHovered.connect(self.linkHovered)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)main = QLabelDemo()main.show()sys.exit(app.exec_())
label标签的伙伴控件
from PyQt5.QtWidgets import *
import sysclass QLabelBuddy(QDialog):def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle('QLabel与伙伴控件')nameLabel = QLabel('&Name', self)nameLineEdit = QLineEdit(self)# 设置伙伴控件nameLabel.setBuddy(nameLineEdit)passwordLabel = QLabel('&Password', self)passwordLineEdit = QLineEdit(self)# 设置伙伴控件passwordLabel.setBuddy(passwordLineEdit)btnOK = QPushButton('&OK')btnCencel = QPushButton('&Cancel')mainLayout = QGridLayout(self)mainLayout.addWidget(nameLabel, 0, 0)mainLayout.addWidget(nameLineEdit, 0, 1, 1, 2)mainLayout.addWidget(passwordLabel, 1, 0)mainLayout.addWidget(passwordLineEdit, 1, 1, 1, 2)mainLayout.addWidget(btnOK, 2, 1)mainLayout.addWidget(btnCencel, 2, 2)if __name__ == '__main__':app = QApplication(sys.argv)main = QLabelBuddy()main.show()sys.exit(app.exec_())
  相关解决方案