PyQt5基本控件详解之QLabel(三) |
您所在的位置:网站首页 › 左窗口显示的内容是什么意思 › PyQt5基本控件详解之QLabel(三) |
QLabel
QLabel的作用:
占位符显示文本显示图片放置gif动画超链接提示标记
Qlabel常用方法
方法描述setAlignment()按固定值方式对齐文本Qt.AlignLeft:水平方向靠左对齐Qt.AlignRight:水平方向靠右对齐Qt.AlignCenter:水平方向居中对齐Qt.AlignJustify:水平方向调整间距两端对齐Qt.AlignTop:垂直方向靠上对齐Qt.AlignBottom:垂直方向靠下对齐Qt.AlignVCenter:垂直方向居中对齐serIndent()设置文本缩进值setPixmap()设置QLabel为一个Pixmap图片text()获得Qlabel的文本内容setText()设置Qlabel的文本内容selectedText()返回所选择的字符setBuddy()设置QLabel的助记符及buddy(伙伴),及使用Qlabel设置快捷键,会在快捷键后将焦点设置到其buddy上,这里用到了Qlabel的交互控件功能 ,此外,buddy可以是任何一个widget控件,使用setBuddy(QWidget*)设置,其Qlabel必须是文本内容,并且使用“&”符号设置了助记符setWordWrap()设置是否允许换行
Qlabel类中的常用信号 信号描述linkActiveted当单击标签中的超链接,希望在新窗口打开这个超链接时,setOpenExternalLinks特性必须设置为True,即setOpenExternalLinks(True)linkHovered当鼠标指针滑过标签中嵌入的超链接时,需要用槽函数与这个信号进行绑定 实例一:显示QLabel标签实现的功能: - 标签1用于文本居中显示,并添加背景属性 - 标签2显示文本,并当鼠标滑过时会在控制台输出当用鼠标点击label2标签时,触发事件 - 标签3加载背景图片,并添加提示信息,居中显示 - 标签4使用超链接,单击可以打开百度的网址,靠右对齐 from PyQt5.QtWidgets import QApplication,QLabel,QWidget,QVBoxLayout from PyQt5.QtCore import Qt from PyQt5.QtGui import QPixmap,QPalette import sys class WindowDemo(QWidget): def __init__(self): super(WindowDemo, self).__init__() #创建4个标签 label1=QLabel(self) label2=QLabel(self) label3=QLabel(self) label4=QLabel(self) #初始化标签控件 #setText():设置Qlabel的文本内容 label1.setText('这是一个文本标签') #标签1的背景填充更改为True,否则无法显示背景 label1.setAutoFillBackground(True) #实例化背景对象,进行相关背景颜色属性设置 palette=QPalette() palette.setColor(QPalette.Window,Qt.blue) #标签1加载背景 label1.setPalette(palette) #设置文本居中显示 label1.setAlignment(Qt.AlignCenter) #设置标签2的显示文本 label2.setText("欢迎使用python gui应用") #标签3居中 label3.setAlignment(Qt.AlignCenter) #设置标签3的提示信息 label3.setToolTip('这是一个图片标签') #标签3的背景图片加载 label3.setPixmap(QPixmap("E:\pyqt5快速开发与实战\第四章\images\python.jpg")) #设置标签4的文本,含有超链接 label4.setText("欢迎百度") #标签4靠右 label4.setAlignment(Qt.AlignRight) #设置提示信息 label4.setToolTip('这是一个超链接标签') #在窗口布局中添加控件 #垂直布局相关属性设置 vbox=QVBoxLayout() #添加标签到垂直布局中 vbox.addWidget(label1) #鼠标垂直拉伸不会改变高度 vbox.addStretch() vbox.addWidget(label2) vbox.addStretch() vbox.addWidget(label3) vbox.addStretch() vbox.addWidget(label4) vbox.addStretch() #允许label1控件访问超链接 label1.setOpenExternalLinks(True) #默认不允许访问超链接,需要使用setOpenExternalLinks(True)允许 #运行访问超链接 label4.setOpenExternalLinks(True) #点击文本框绑定槽函数 label4.linkActivated.connect(self.link_clicked) #滑过文本框绑定槽函数事件 label2.linkHovered.connect(self.link_hovered) label1.setTextInteractionFlags(Qt.TextSelectableByMouse) #加载布局:前面设置好的垂直布局 self.setLayout(vbox) #设置标题 self.setWindowTitle('Qlabel例子') def link_hovered(self): print('当用鼠标点击label2标签时,触发事件') def link_clicked(self): print('当用鼠标点击label4标签时,触发事件') if __name__ == '__main__': app=QApplication(sys.argv) win=WindowDemo() win.show() sys.exit(app.exec_())效果如下 实现功能: 可以使用快捷键快速定位到相关绑定的伙伴控件 - 创建两个标签与两个文本单行输入框 - 添加快捷键与伙伴关系绑定 - 创建两个按钮,添加快捷键 - 栅格布局添加控件并设置有关的属性 快捷键的使用,举例说明 nameLb2 = QLabel(‘&Password’, self) “&”后面加的第一个首字母大写,这是我们一会儿用到的快捷键, 使用方式是Alt+&后面大写的第一个字母 这里正确的使用方式是Alt+P就可以快速定位到所绑定的伙伴控件上,后面的快捷键使用类似 from PyQt5.QtWidgets import * import sys class QLabelDemo(QDialog): def __init__(self): super(QLabelDemo, self).__init__() #设置标题 self.setWindowTitle('Qlabel例子') #设置标签1的内容,并添加快捷键Alt+Q nameLb1=QLabel('&QQ',self) #建立单行文本输入框 nameEd1=QLineEdit(self) #标签与文本框继续绑定,按快捷键Alt+Q可以定位到单行输入框 nameLb1.setBuddy(nameEd1) #与前面相同 nameLb2 = QLabel('&Password', self) nameEd2 = QLineEdit(self) nameLb2.setBuddy(nameEd2) #创建两个按钮,ok与cancel并添加快捷键 btnok=QPushButton('&OK') btnCancel=QPushButton('&Cancel') #窗口布局栅格,分为一个个的格子,部件放在格子内 mainLayout=QGridLayout(self) #布局内标签初始坐标设置(标签,格子0行,格子0列)默认标签大小显示 mainLayout.addWidget(nameLb1,0,0) #文本框初始坐标设置(文本输入框,格子0行,格子1列,所占位置起始格子1,结束格子2) mainLayout.addWidget(nameEd1,0,1,1,2) mainLayout.addWidget(nameLb2, 1, 0) mainLayout.addWidget(nameEd2, 1, 1, 1, 2) mainLayout.addWidget(btnok, 2, 1) mainLayout.addWidget(btnCancel, 2, 2) def link_hovered(self): print('当用鼠标点击label2标签时,触发事件') def link_clicked(self): print('当用鼠标点击label4标签时,触发事件') if __name__ == '__main__': app=QApplication(sys.argv) win=QLabelDemo() win.show() sys.exit(app.exec_()) 效果如下:源码以及相关文件下载:https://download.csdn.net/download/jia666666/10597897 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |