qlabel可以选中吗_PyQt5 控件学习(一个一个学习之QLabel)

本文详细介绍了PyQt5中的QLabel控件,包括其继承关系、功能作用,如构造函数、对齐方式、缩进与边距、文本格式、与小伙伴的关联、内容缩放、文本交互、外部链接、单词换行、内容操作及展示动图等,并通过实例代码展示了QLabel的各种使用方法。
摘要由CSDN通过智能技术生成

QLabel 的继承图:

20190822191029760552.png

QLabel 的描述:

20190822191030044713.png

它能少与用户交互的!主要是用来交互的!

QLabel 的继承:

它继承自QFrame

QLabel 的功能作用:

QLabel 的功能作用之构造函数:

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label= QLabel("hello world",self)

label.move(100,100)

label.adjustSize()

label.setStyleSheet("background-color:cyan;")if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之对齐:

QLabel 的功能作用之缩进和边距:

20190822191030174588.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label= QLabel("hello world Life is short ,I learn Python",self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#对齐

#label.setAlignment(Qt.AlignRight | Qt.AlignVCenter)\

#文本缩进间距

#label.setIndent(20)

#文件边距

#label.setMargin(5)

if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之文本格式:

20190822191030285909.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label= QLabel("hello world Life is short ,I learn Python",self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#文本格式:

label.setText("

xxx

")

label.setTextFormat(Qt.PlainText)if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之小伙伴:

20190822191030408948.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label= QLabel("&Label",self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")

lineEdit1=QLineEdit(self)

lineEdit1.move(250,250)

label.setBuddy(lineEdit1)#小伙伴

lineEdit2=QLineEdit(self)

lineEdit2.move(250,300)if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之内容缩放:

20190822191030538822.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label= QLabel("&Label",self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")

label.setPixmap(QPixmap("icon/view.png"))#1,缩放图片

#label.adjustSize()

#2,

label.setScaledContents(True)if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之文本交互标志:

20190822191030642331.png

QLabel 的功能作用之选中文本:

20190822191030792712.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label= QLabel("Label",self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#设置文本交互标志 #默认是无法选中标签的。

#用鼠标和键盘 可以选中 ,可以编辑

label.setTextInteractionFlags(Qt.TextSelectableByMouse |Qt.TextSelectableByKeyboard |Qt.TextEditable)

label.setSelection(1,2) #从哪里开始 选多少

if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之外部链接:

20190822191031011448.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label=QLabel(self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#打开外部链接

label.setText("Python123")

label.setOpenExternalLinks(True)if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之单词换行:

20190822191031139370.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label=QLabel(self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#label.setText("Python123")

#单词换行

#label.setText("djafs jafssdjlakf jfaljksdl fjd fasdjfal;fadsjl ")

label.setWordWrap(True) #此时就会换行了

#它的应用场景是,将标签中的内容竖着排列 ,就可以用它

label.setText(‘\n‘.join("123456789"))if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

QLabel 的功能作用之内容操作:

20190822191031247761.png

20190822191031357129.png

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label=QLabel(self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#文本字符串

#label.setText("view_off.png%E2%80%98")

#数值型

#label.setNum(888)

#label.setNum(888.555)

#图形图像

###########################################################

pic =QPicture()

painter= QPainter(pic) #它里面的参数是 QPaintDevice “纸”,所有控件都可以当做纸,因为QWidget也继承了QPaintDevice

#这时就有了画家和 纸

#给画家支笔

Qt.BrushStyle

brush= QBrush(QColor(100,10,155)) #刷的颜色

painter.setBrush(brush)#画家开始画

painter.drawEllipse(0,0,200,200)

label.setPicture(pic)

label.adjustSize()###########################################################

if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

继续,它可以展示动图:

20190822191031507510.png

注:虽然它的方法名字叫做setMovie ,但是它不是视频,它是没有声音的简单动画!

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label=QLabel(self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")#动图

movie = QMovie("./test.gif")

label.setMovie(movie)

label.resize(500,500)#设置速度

movie.setSpeed(300) #原来的1倍

movie.start()if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

清空:

clear() 它是全部清空

QLabel 的信号:

20190822191031585630.png

一个是超链接被点击时,一个是鼠标放在超链接上面的时候,

335b83df261c422459d4afc29ba290e5.png

d1b641f023dd079c9e4a800b96607d9d.gif

from PyQt5.Qt import * #刚开始学习可以这样一下导入

importsysclassWindow(QWidget):def __init__(self):

super().__init__()

self.setWindowTitle("QLabel的学习")

self.resize(400,400)

self.set_ui()defset_ui(self):

label=QLabel(self)

label.move(100,100)

label.resize(200,50)

label.setStyleSheet("background-color:cyan;")

label.setText("Python123")#信号 这里的信号主要是和超链接有关的。

label.setOpenExternalLinks(True)

label.linkActivated.connect(lambda val:print("点击了超链接",val))#注:如果setopenexternLinks 开启的话,就不会触发linkActivated这个信号了,因为已经处理了这个信号

#label.linkHovered.connect(lambda val:print("鼠标在超链接上",val))

if __name__ == ‘__main__‘:

app=QApplication(sys.argv)

window=Window()

window.show()

sys.exit(app.exec_())

View Code

总结:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值