PyQt5-QLineEdit綜合案例

# encoding: utf-8
'''===================================================
@Project -> File : qt5003 -> QLineEditDemo.py
@IDE             : qt5003
@Author          : Mr. Batac
@Date            : 2020-03-18 21:45
@Desc            :
======================================================'''

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.textChange)

        edit5 = QLineEdit()
        edit5.setEchoMode(QLineEdit.Password)
        edit5.editingFinished.connect(self.enterPress)

        edit6 = QLineEdit("Hello PyQt5")
        edit6.setReadOnly(True)


        formLayout = QFormLayout(self)
        formLayout.addRow("整數校驗", edit1)
        formLayout.addRow("浮點校驗", edit2)
        formLayout.addRow("掩碼", edit3)
        formLayout.addRow("文本變化", edit4)
        formLayout.addRow("文本回顯模式", edit5)
        formLayout.addRow("只能讀取", edit6)


        self.setWindowTitle("QlineEdit綜合案例")

    def textChange(self, text):
        print("文字內容變化:"+text)


    def enterPress(self):
        print("結束了")


if __name__ == '__main__':
    app = QApplication(sys.argv)
    mainView = QLineEditDemo()
    mainView.show()
    sys.exit(app.exec_())

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章