QLabel控件类的主要API如下:

setAlignment():设置文本的对齐方式

setIndent():设置文本缩进

text():获取文本内容

setText():设置文本内容

selectedText():返回所选择的字符

setBuddy():设置伙伴关系

setWordWrap():设置是否允许换行

QLabel常用的信号(事件):

1. 当鼠标滑过QLabel控件时触发:linkHovered

2. 当鼠标单击QLabel控件时触发:linkActivated

一  QLabel显示文本,图片

例如,下面的demo

Qt的控件支持html语法,可以用html代码控制显示效果。

第一个label只显示字体,但是通过调色板QPalette改变了背景颜色,第二个label是一个空的超链接,第三个QLabel显示图片,第四个是超链接,可以直接打开网址,调到百度。

代码如下:

import sys
from PyQt5.QtWidgets import QVBoxLayout,QMainWindow,QApplication,QLabel,QWidget
from PyQt5.QtGui import QPixmap, QPalette
from PyQt5.QtCore import Qtclass 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)palette = QPalette()palette.setColor(QPalette.Window,Qt.black)  # 设置背景色label1.setPalette(palette)label1.setAlignment(Qt.AlignCenter)label2.setText("<a href='#'>label2</a>")label3.setAlignment(Qt.AlignCenter)label3.setToolTip('这是一个图片标签')label3.setPixmap(QPixmap("1.png"))# 如果设为True,用浏览器打开网页,如果设为False,调用槽函数label4.setOpenExternalLinks(True)label4.setText("<a href='https://www.baidu.com'>跳转到百度</a>")label4.setAlignment(Qt.AlignCenter)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_())

label2和label4分别实现了鼠标滑过,点击QLabel的信号。

二  QLabel设置伙伴控件

例如下面的Demo, 用alt + N设置nameEdit的光标,alt + p设置password的光标,这种叫伙伴关系。

代码如下:

from PyQt5.QtWidgets import *
import sysclass QLabelBuddy(QDialog) :def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle('QLabel设置伙伴控件')self.setFixedWidth(250)nameLabel = QLabel('&Name',self)nameLineEdit = QLineEdit(self)# 设置伙伴控件nameLabel.setBuddy(nameLineEdit)passwordLabel = QLabel('&Password',self)passwordLineEdit = QLineEdit(self)# 设置伙伴控件passwordLabel.setBuddy(passwordLineEdit)btnOK = QPushButton('&OK')btnCancel = 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(btnCancel,2,2)if __name__ == '__main__':app = QApplication(sys.argv)main = QLabelBuddy()main.show()sys.exit(app.exec_())

代码中用serBuddy把QLabel和QLineEdit设置为伙伴控件关系,并用快捷键可以设置光标,当然伙伴关系还有其它用法。

pyqt QLabel详细用法相关推荐

  1. pyqt5 QLabel详细用法

    QLabel控件类的主要API如下: setAlignment():设置文本的对齐方式setIndent():设置文本缩进text():获取文本内容setText():设置文本内容selectedTe ...

  2. pyqt QSpinBox详细用法

    QSpinBox可以上下调整值,代码如下: import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtW ...

  3. pyqt QLineEdit 详细用法

    一  QLineEdit回显格式    QLineEdit的文本有四种显示方式: (1)正常显示, (2)输入但不显示文本, (3)密码格式显示, (4)类似于在linux下输入密码也不显示. Qt代 ...

  4. Android命令行工具logcat详细用法!

    logcat是Android中一个命令行工具,可以用于得到程序的log信息. 见板凳详细说明!      本贴内容来自网络,引用网址为:http://hi.baidu.com/%C9%C1%D2%AB ...

  5. __declspec关键字详细用法

    __declspec关键字详细用法 2009-01-21 16:23 __declspec用于指定所给定类型的实例的与Microsoft相关的存储方式.其它的有关存储方式的修饰符如static与ext ...

  6. mysql left/right join算法效率分析_mysql left join,right join,inner join超详细用法分析

    MySQL left join,right join,inner join超详细用法分析 下面是例子分析 表A记录如下: aID        aNum 1           a20050111 2 ...

  7. python sort怎么用,Linux Sort命令详细用法(有实例)

    Linux Sort命令详细用法(有实例) sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! Linux sort命令进阶: 1 sort的工作原理 so ...

  8. vue性能优化-------vendor优化详细用法(瘦身),减小体积,引入cdn

    vue性能优化-------vendor优化详细用法(瘦身),减小体积,引入cdn 原创ChrisWang_ 最后发布于2019-05-24 10:25:58 阅读数 1332  收藏 展开 vue性 ...

  9. oracle rtrim(),Oracle ltrim() rtrim() 函数详细用法

    嘿嘿,今天在论坛里看了一篇帖子,讨论ltrim() 函数的详细用法,下面我借几个高手的回答总结一下: 先看几个实例: SQL> select ltrim('109224323','109') f ...

最新文章

  1. C语言如何实现泛型编程?
  2. iOS:NSBundle的具体介绍
  3. centos7双网卡,一个连公网,一个连内网
  4. 基于贝叶斯推断的分类模型 机器学习你会遇到的“坑”
  5. 分数加减乘除混合运算带答案_分数分数加减乘除混合运算练习题及答案_0.doc
  6. uniapp打包安装后提示_本应用使用HBuilderX 2.8.12 或对应的cli版本编译,而手机端SDK版本是2.8.13---基于Vue的uniapp手机端_前端UI_uview工作笔记007
  7. 跨服务器查询信息的sql
  8. edi python_在不从edi运行的情况下调用python函数
  9. Unity利用GPUinstancing实现大面积草地
  10. 话单分析 之 含小数保留9位
  11. 怎样绘制产品流程图?绘制的技巧分享
  12. 必须知道的C语言知识细节:单引号和双引号正确用法
  13. python开三次方_用python计算三次方根
  14. 上下文无关文法的分析树(Context-Free Grammar, CFG)的分析树--编译原理
  15. 第一天送宇轩去幼儿园
  16. 数据库查询之条件排序
  17. Canvas + CSS3实现可视化项目开场动画
  18. 修改注册表,更改Win10版本,解决升级时无法“保留个人文件和应用”的问题
  19. 特征脸算法c语言,本科毕业论文—人脸识别.doc
  20. 开发指南:BUMO 智能合约 Java 开发指南

热门文章

  1. Oracle 中LONG RAW BLOB CLOB类型介绍
  2. 我的window10中没有Windows Subsystem for Linux
  3. 在Windows下使用Python编程
  4. 漏洞复现----6、Jenkins远程命令执行漏洞(CVE-2018-1000861)
  5. 贵州大学计算机试题及答案,贵州大学学位计算机选择题答案
  6. python list 求平均
  7. 芯盾时代:一种会思考的新一代安全身份认证方式
  8. TSP-粒子群算法求解
  9. matlab函数 bsxfun(高效代码)
  10. MySQL5.6建索引时遇到 Specified key was too long; max key length is 767 bytes错误提示解决办法