QLabel 标签

article/2025/10/14 5:10:37

QLabel 标签

QLabel 是 PyQt6 里用来建立文字或图片的标签控件,这篇教学会介绍如何在 PyQt6 窗口里加入 QLabel 标签,并进行像是文字字型、大小、颜色和位置...等参数设定。

快速预览:

  • 加入 QLabel 标签

  • QLabel 位置设定

  • QLabel 文字设定

  • QLabel 加入图片

  • 使用 StyleSheet 设定 QLabel 样式

加入 QLabel 标签

建立 PyQt6 窗口物件后,透过 QtWidgets.QLabel(widget) 方法,就能在指定的控件中建立标签,下方的程序执行后,会加入一个 QLabel 标签,并使用 setText() 方法加入文字。

 from PyQt6 import QtWidgetsimport sys​app = QtWidgets.QApplication(sys.argv)​Form = QtWidgets.QWidget()Form.setWindowTitle('千牛编程思维')Form.resize(320, 240)​label = QtWidgets.QLabel(Form)  label.setText('hello world')    ​Form.show()sys.exit(app.exec())

类写法:

 # 导入PyQt6库中的QtWidgets模块和sys模块from PyQt6 import QtWidgetsimport sys​# 创建一个名为MyWidget的类,继承自QtWidgets.QWidget类class MyWidget(QtWidgets.QWidget):# 构造函数def __init__(self):super().__init__()self.setWindowTitle('千牛编程思维')  # 设置窗口标题self.resize(320, 240)  # 设置窗口尺寸self.ui()  # 调用ui函数​# ui函数用于创建用户界面def ui(self):self.label = QtWidgets.QLabel(self)  # 创建QLabel对象并将其添加到窗口上self.label.setText('hello world')  # 在标签中显示文本​if __name__ == '__main__':app = QtWidgets.QApplication(sys.argv)  # 创建Qt应用程序对象Form = MyWidget()  # 创建MyWidget对象Form.show()  # 显示窗口sys.exit(app.exec())  # 运行应用程序并退出

QLabel 位置设定

透过下列 QLabel 方法,可以将 QLabel 控件定位到指定的位置:

方法参数说明
移动()x, y设定 QLabel 在摆放的父控件中的 xy 座标,x 往右为正,y 往下为正,尺寸根据内容自动延伸。
设置几何()x, y, w, h设定 QLabel 在摆放的父控件中的 xy 座标和长宽尺寸,x 往右为正,y 往下为正,如果超过长宽尺寸,预设会被裁切无法显示。
setContentMargins()左、上、右、下QLabel 的边界宽度。

下方的程序执行后会放入两个 QLabel,一个使用 move() 定位在 (50,50) 位置,另外一个使用 setGeometry() 方法定位在 (50, 80) 的位置并设定大小为 100x100。

 from PyQt6 import QtWidgetsimport sys​app = QtWidgets.QApplication(sys.argv)​Form = QtWidgets.QWidget()Form.setWindowTitle('千牛编程思维')Form.resize(320, 240)​label1 = QtWidgets.QLabel(Form)label1.setText('hello world, how are you?')label1.move(50, 50)​label2 = QtWidgets.QLabel(Form)label2.setText('hello world, how are you?')label2.setGeometry(50, 80, 100, 100)​Form.show()sys.exit(app.exec())

类写法:

 from PyQt6 import QtWidgetsimport sys​class MyWidget(QtWidgets.QWidget):def __init__(self):super().__init__()self.setWindowTitle('千牛编程思维')self.resize(320, 240)self.ui()​def ui(self):self.label1 = QtWidgets.QLabel(self)self.label1.setText('hello world, how are you?')self.label1.move(50, 50)​self.label2 = QtWidgets.QLabel(self)self.label2.setText('hello world, how are you?')self.label2.setGeometry(50, 80, 100, 100)​if __name__ == '__main__':app = QtWidgets.QApplication(sys.argv)Form = MyWidget()Form.show()sys.exit(app.exec())

QLabel 文字设定

透过下列常用的 QLabel 方法,可以设定 QLabel 中的文字样式 ( 设定字体需要搭配 QtGui,设定对齐要搭配 QtCore,需要额外载入对应模组 ):

方法参数说明
设置文字换行()布尔是否换行,预设 Fasle 不换行,设定 True 换行。
setAlignment()QtCore.Qt.AlignmentFlag对齐方式,预设 ,可设定 、 ( 此处与 PyQt5 不同 )。QtCore.Qt.AlignmentFlag.AlignCenter``QtCore.Qt.AlignmentFlag.AlignRight``QtCore.Qt.AlignmentFlag.AlignLeft
setFont()QtGui.QFont()文字样式设定,需搭配 QtGui.QFont()。

使用 QtGui.QFont() 产生的文字样式,可以使用下列方法设定:

方法参数说明
font.setFamily()名字字体名称。
设置点大小你在那里字体大小。
设置粗体()布尔是否粗体,预设 False。
设置斜体()布尔是否斜体,预设 False。
setStrikeOut()布尔是否加入删除线,预设 False。
设置下划线()布尔是否加入底线,预设 False。

下方的程序执行后,开启的窗口中会出现一个设定过样式的 QLabel。

 from PyQt6 import QtWidgets, QtGui, QtCoreimport sys​app = QtWidgets.QApplication(sys.argv)​Form = QtWidgets.QWidget()Form.setWindowTitle('千牛编程思维')Form.resize(320, 240)​label = QtWidgets.QLabel(Form)label.setText('hello world, how are you?')label.setGeometry(30, 30, 100, 100)​label.setContentsMargins(0,0,0,0)          # 设定边界label.setWordWrap(True)                    # 可以换行label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)  # 对齐方式​font = QtGui.QFont()                       # 建立文字样式控件font.setFamily('Verdana')                  # 设定字体font.setPointSize(10)                      # 文字大小font.setBold(True)                         # 粗体font.setItalic(True)                       # 斜体font.setStrikeOut(True)                    # 删除线font.setUnderline(True)                    # 底线label.setFont(font)                        # 设定文字样式​Form.show()sys.exit(app.exec())

类写法:

 from PyQt6 import QtWidgets, QtGui, QtCoreimport sys​class MyWidget(QtWidgets.QWidget):def __init__(self):super().__init__()self.setWindowTitle('千牛编程思维')self.resize(320, 240)self.ui()​def ui(self):self.label = QtWidgets.QLabel(self)self.label.setText('hello world, how are you?')self.label.setGeometry(30, 30, 200, 200)​self.label.setContentsMargins(0,0,0,0)     # 设定边界self.label.setWordWrap(True)               # 可以换行self.label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)  # 对齐方式​font = QtGui.QFont()                       # 建立文字样式控件font.setFamily('Verdana')                  # 设定字体font.setPointSize(10)                      # 文字大小font.setBold(True)                         # 粗体font.setItalic(True)                       # 斜体font.setStrikeOut(True)                    # 删除线font.setUnderline(True)                    # 底线self.label.setFont(font)                   # 设定文字样式​if __name__ == '__main__':app = QtWidgets.QApplication(sys.argv)Form = MyWidget()Form.show()sys.exit(app.exec())

QLabel 加入图片

如果要在 QLabel 里加入图片,需要先使用 QtGui.QImage() 方法读取图片,接著使用 setPixmap() 方法加入图片,详细步骤可以参考下方程序:

 from PyQt6 import QtWidgets, QtGuiimport sys​app = QtWidgets.QApplication(sys.argv)​Form = QtWidgets.QWidget()Form.setWindowTitle('千牛编程思维')Form.resize(800, 600)​label = QtWidgets.QLabel(Form)label.setGeometry(20, 20, 300, 500)​img = QtGui.QImage('Mona.jpg')                 # 读取图片label.setPixmap(QtGui.QPixmap.fromImage(img))  # 加入图片​Form.show()sys.exit(app.exec())

类写法:

 from PyQt6 import QtWidgets, QtGui, QtCoreimport sys​class MyWidget(QtWidgets.QWidget):def __init__(self):super().__init__()self.setWindowTitle('千牛编程思维')self.resize(800, 600)self.ui()​def ui(self):self.label = QtWidgets.QLabel(self)self.label.setGeometry(20, 20, 300, 500)​img = QtGui.QImage('Mona.jpg')                 # 读取图片self.label.setPixmap(QtGui.QPixmap.fromImage(img))  # 加入图片​if __name__ == '__main__':app = QtWidgets.QApplication(sys.argv)Form = MyWidget()Form.show()sys.exit(app.exec())

使用 StyleSheet 设定 QLabel 样式

如果会使用网页 CSS 语法,就能透过 setStyleSheet() 设定 QLabel 样式,在设计样式上也较为弹性好用,下方的程序执行后,会套用 CSS 样式语法,实现一个黑色虚线外框的 QLabel ( 不支援 CSS3 相关语法 )。

from PyQt6 import QtWidgets, QtGui
import sysapp = QtWidgets.QApplication(sys.argv)Form = QtWidgets.QWidget()
Form.setWindowTitle('千牛编程思维')
Form.resize(320, 240)label = QtWidgets.QLabel(Form)
label.setText('hello world, how are you?')
label.setGeometry(20, 20, 200, 150)
label.setWordWrap(True)    # 设定可以换行label.setStyleSheet('''background:#fff;color:#f00;font-size:20px;font-weight:bold;border:2px dashed #000;padding:20px;text-align:center;
''')Form.show()
sys.exit(app.exec())

类写法:

from PyQt6 import QtWidgets, QtGui, QtCore
import sysclass MyWidget(QtWidgets.QWidget):def __init__(self):super().__init__()self.setWindowTitle('千牛编程思维')self.resize(320, 240)self.ui()def ui(self):self.label = QtWidgets.QLabel(self)self.label.setText('hello world, how are you?')self.label.setGeometry(20, 20, 200, 150)self.label.setWordWrap(True)    self.label.setStyleSheet('''background:#fff;color:#f00;font-size:20px;font-weight:bold;border:2px dashed #000;padding:20px;text-align:center;''')if __name__ == '__main__':app = QtWidgets.QApplication(sys.argv)Form = MyWidget()Form.show()sys.exit(app.exec())


http://chatgpt.dhexx.cn/article/YheKRiIr.shtml

相关文章

QLabel的使用

QLabel介绍 QLabel 是 Qt 框架中的一个控件类,用于显示文本或图像。它可以在窗口或其他容器中显示静态文本,并且可以根据需要设置格式、对齐方式和尺寸。 主要作用如下: 显示文本内容:QLabel 可以显示文字内容,可以…

QLabel显示图像

QLabel显示图像 通常用QLabel显示图像,QLabel类有setPixmap()函数,可以用来显示图像。也可以直接用QPainter画出图像。 如果图像过大,直接用QLabel显示,将会出现有部分图像显示不出来,这时可以用Scroll Area部件。方…

QLabel绘制滚动文本

实现思路 绘制滚动文本是个很简单的事,只需要用定时器累计一个文本坐标偏移量,然后 update ,在 paintEvent 里把文本画出来。 Qt 定时刷新可以用(可能还有其他方式): QObject的startTimer配合paintEvent&…

PyQt5 QLabel控件

PyQt5 QLabel控件 QLabel常用方法显示动画超链接 QLabel常用信号 QLabel 就是常见的标签,可以用来显示文字(包括纯文本和富文本),图片及动画。 QLabel常用方法 方法描述margin保存 QLabel 控件中内容与边框之间的距离(边距&#…

Qt QLabel详解

一、QLabel常用方法 1. QLabel设置文本内容 ui.label->setText(QStringLiteral("测试中文\n"));2. QLabel设置颜色 通过设计器里面的改变样式进行设置:同时可以设置字体、文本对齐方式、背景图片 color: rgb(255, 85, 0); background-color: rgb(8…

Qt之QLabel(属性 显示图片 显示动图 显示富文本信息 信号)

QLabel可以说是Qt中最常见的控件之一,主要用来显示文本文字、显示图片、显示gif动图、显示富文本信息。本文将从以下几个方面对QLabel进行介绍: [1]显示及获取文本文字 [2]显示图片 [3]显示动图 [4]显示富文本信息 [5]常用属性设置 [6]信号事件 至于样式表(Q…

Qt扫盲-QLabel使用总结

QLabel使用总结 一、QLabel 显示内容二、注意事项1. 格式注意2. 不保留先前状态3. 格式对齐4. 伙伴焦点 三、信号和槽函数使用1. 信号2. 槽函数 总结: QLabel 其实就是一个用来只读显示的简易控件。适合数据量很小的内容显示。 QLabel用于显示 文本或图像。 不提供…

QT常用控件——QLabel标签控件

操作系统: 统信UOSv20 Qt版本: 5.11.3 一,简单介绍 QLabel用于显示文本或图像,不提供用户交互功能,标签的视觉外观可以以各种方式配置。 项目内容HeaderQLabelqmakeQT widgetsInheritsQFrame 二,常用方法 1. 常用方法 方法…

JavaScript 弹出对话框3种方式

js 弹出对话框3种方式对话框有三种 1:只是提醒,不能对脚本产生任何改变; 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3:一个带输入的对话框,可以返回…

js的弹出框

js的弹出框包括三种:alert、confirm、prompt 1 alert() alert()方法有一个参数,就是用户想弹出的内容,弹出框很简单,就一个显示功能,你可以点击确认关闭这个弹出框。 例如: alert("hello world&…

JavaScript弹出对话框的三种方法

三种方法 alert(); 最简单,将alert();括号内的内容弹出。 confirm(); 与alert();类似,包含确认和取消按钮,点击确定confirm();方法会返回true,点击取消confirm();方法会返回false; prompt(); 与confirm();方法…

JavaScript弹出框

提到弹出框,首先想到的alert()了,其次想到的也还是alert(),其实在js中有三种弹出框,下面我们一一说明。 1,仅确定。 即:对话框界面上只有确定按钮。该功能可以使用alert(…

JS弹出对话框的三种方式

javascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prompt()来获得,可以利用这些对话框来完成js的输入和输出,实现与用户能进行交互的js代码。 第一种:alert()方法 alert()方法是这三种对话框中最容易使用…

JavaScript弹出对话框的三种方式-alert()-confirm()-prompt()

一、alert()警告框(确定) alert()方法是显示一条弹出提示消息和确认按钮的警告框。 需要注意的是 : alert()是一个阻塞的函数,如果不点确认按钮,后面的内容就不会加载出来。 使用方式: alert(“想要提示的文…

ssh 公钥登录

公钥登录远程主机 ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上。 ssh-copy-id命令也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限。 ssh-copy-id [-i [identity_file]] [user]m…

SSH登录失败提示Key exchange failed

前两天去配置一台华为5735交换机,到现场才被告知网络中不允许接入私人电脑,要用他们的涉密电脑配置,结果配置完成后测试SSH远程登录失败,提示如下图: 多次检查配置没有发现有什么遗漏,后来询问别人告知是本…

统信UOS配置SSH登录

配置ssh登录 vim /etc/ssh/sshd_config #打开ssh配置文件 Port 22 #开启ssh 22端口 PermitRootLogin yes #允许root登录 systemctl restart sshd #重启sshd服务 使用MobaXterm1_CHS1远程工具测试 登录成功

Oracle云服务器启用SSH登录

Oracle云服务器(虚机实例)创建创建完成后,打开FinalShell(可以使用其他Shell登录工具)配置好相应的信息。 在此注意以下两点: 用户名是:Centos系统默认账户是opc;Ubuntu系统默认账户…

通过SSH登录Linux云服务器方法

目录 什么是SSH ? SSH登录云服务器 VScode配置ssh环境 VSCode配置Linux平台C/C编程环境 什么是SSH ? Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通…

树莓派SSH登录显示Access Denied

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、2022.4.4版本以前二、2022.4.4版本以后 一、2022.4.4版本以前 补充一个,第一次连接wifi,在内存卡根目录新建wpa_supplicant.conf文件,输…