PyQT5 (七)QLabel 控件的使用方法和常用的信号(事件)

PyQT5 (七)QLabel 控件的使用方法和常用的信号(事件)_第1张图片

QLable控件 的 4中用法

点击超链接直接浏览器打开

import sys

from PyQt5.QtCore import Qt
from PyQt5.QtGui import QIcon, QFont, QPalette, QPixmap
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QToolTip, QHBoxLayout, QMainWindow, QLabel, QVBoxLayout

'''
控件 QLabel 的使用
setAlignment() : 设置文本的对齐方式
setIndent() : 获取文本的内容
text() : 设置文本的对齐方式
setBuddy() : 设置伙伴关系
setText() : 设置文本的内容
selectedText() : 返回所选择的字符
setWordWrap() : 设置文本是否允许换行

QLabe 常用的信号(事件)
1 当鼠标划过控件时触发 linkHovered
2  当鼠标单击控件时出发 linkActivated
'''


class QLabelDemo(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 设置定位和左上角坐标
        self.setGeometry(300, 300, 500, 300)
        # 设置窗口标题
        self.setWindowTitle('QLabel 控件的使用方法和常用的信号(事件)')
        # 设置窗口图标
        # self.setWindowIcon(QIcon('../web.ico'))

        lb1 = QLabel(self)
        lb2 = QLabel(self)
        lb3 = QLabel(self)
        lb4 = QLabel(self)

        lb1.setText("这是文本标签label")
        lb1.setAutoFillBackground(True)
        palette = QPalette()
        # 设置背景色
        palette.setColor(QPalette.Window, Qt.blue)
        lb1.setPalette(palette)
        lb1.setAlignment(Qt.AlignCenter)

        lb2.setText("你好Python Gui程序")

        lb3.setAlignment(Qt.AlignCenter)
        lb3.setToolTip('这个是图片标签')
        lb3.setPixmap(QPixmap("../web.ico"))

        lb4.setText("跳转到百度")
        lb4.setAlignment(Qt.AlignRight)
        lb4.setToolTip('这个是超链接Label')

        # 如果设为True,用浏览器打开网页,如果设为False,调用槽函数
        lb4.setOpenExternalLinks(True)

        vbox = QVBoxLayout()
        vbox.addWidget(lb1)
        vbox.addWidget(lb2)
        vbox.addWidget(lb3)
        vbox.addWidget(lb4)

        lb2.linkHovered.connect(self.linkHovered)
        lb4.linkActivated.connect(self.linkClicked)

        self.setLayout(vbox)

    def linkHovered(self):
        print("鼠标划过label标签时触发的事件")

    def linkClicked(self):
        print("鼠标单击触发的事件")


if __name__ == '__main__':
    app = QApplication(sys.argv)
    # 设置应用图标
    app.setWindowIcon(QIcon('../web.ico'))
    w = QLabelDemo()
    w.show()
    sys.exit(app.exec_())

你可能感兴趣的:(pyqt5,qt,python)