老师原课件下载地址:
有积分的朋友,支持下我,打赏也OK。
不下载也可以,我每节课会吧代码贴出来
一点心得
写了几节课,发现每节课大量时间都没什么用,基本就是找找对应的功能在哪个位置,感觉这样的效率太低了。
我也不知道后面的难度高还是低。想尝试下多节课合并到一篇文章。
这节课由于是汇总知识点,我就不合并了,下节课开始尝试下加快速度学习吧!
视频链接
课程重点
综合案例
代码位置
完整代码
'''
QLineEdit综合案例
'''
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import Qt
import sys
class QLineEditDemo(QWidget):
def __init__(self):
super(QLineEditDemo,self).__init__()
self.initUI()
def initUI(self):
edit1 = QLineEdit()
# 使用int校验器
edit1.setValidator(QIntValidator())
edit1.setMaxLength(4) # 不超过9999
edit1.setAlignment(Qt.AlignRight)
edit1.setFont(QFont('Arial',20))
edit2 = QLineEdit()
edit2.setValidator(QDoubleValidator(0.99,99.99,2))
edit3 = QLineEdit()
edit3.setInputMask('99_9999_999999;#')
edit4 = QLineEdit()
edit4.textChanged.connect(self.textChanged)
edit5 = QLineEdit()
edit5.setEchoMode(QLineEdit.Password)
edit5.editingFinished.connect(self.enterPress)
edit6 = QLineEdit('Hello PyQt5')
edit6.setReadOnly(True)
formLayout = QFormLayout()
formLayout.addRow('整数校验',edit1)
formLayout.addRow('浮点数校验',edit2)
formLayout.addRow('Input Mask',edit3)
formLayout.addRow('文本变化', edit4)
formLayout.addRow('密码',edit5)
formLayout.addRow('只读',edit6)
self.setLayout(formLayout)
self.setWindowTitle('QLineEdit综合案例')
def textChanged(self,text):
print('输入的内容:' + text)
def enterPress(self):
print('已输入值')
if __name__ == '__main__':
app = QApplication(sys.argv)
main = QLineEditDemo()
main.show()
sys.exit(app.exec_())
遇到的问题
改写效果展示
改写注意点
edit1.setMaxLength(4) # 不超过9999
edit1.setAlignment(Qt.AlignRight)
edit1.setFont(QFont('Arial',20))
edit5.setEchoMode(QLineEdit.Password)
edit6 = QLineEdit('Hello PyQt5')
edit6.setReadOnly(True)
改写代码(QTdesigner模式)
# -*- coding:utf-8 -*-
'''
@Author: knocky
@Blog: https://blog.csdn.net/zzx188891020
@E-mail: 188891020@qq.com
@File: class35.py
@CreateTime: 2020/5/10 23:26
'''
import sys
from PyQt5.QtWidgets import QApplication
from PyQt5 import uic
from PyQt5.QtGui import QDoubleValidator
class my_form():
def __init__(self):
super().__init__()
self.ui = uic.loadUi("../ui_package/class35.ui")
self.ui.lineEdit_2.setValidator(QDoubleValidator(0.99,99.99,2))
self.ui.lineEdit_4.textChanged.connect(self.textChanged)
self.ui.lineEdit_5.editingFinished.connect(self.enterPress)
def textChanged(self,text):
print('输入的内容:' + text)
def enterPress(self):
print('已输入值')
if __name__ == '__main__':
app = QApplication(sys.argv)
main = my_form()
main.ui.show()
sys.exit(app.exec_())