pyqt5初级:打造个性化简易计算器

pyqt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是p目前最强大的库之一。需要安装pyqt5,pycharm,qt-designer,qt-pyuic,pyinstaller,具体得安装方法与环境配置请自行百度。

第一步:布局,利用qt-designer搭建计算器得初级界面。

如图,打开qt-designer

然后点击创建,开始布局。

 

拖拽12个push button到右面得编辑栏中,并设置成4*4的格局。

然后全选中   右键-----------布局------栅格布局

 

然后全选   右键----布局-----垂直布局  

选中栏      调整高度     布局完成    点击左上角的文件   将文件另存为.ui结尾的文件       用pycharm打开该文件    直接右键   用配置好的pyuic  将ui文件转化为.py文件    如图:

二  编辑运算功能:

from jisuanqi import Ui_MainWindow
import sys
from PyQt5.QtWidgets import QWidget, QApplication, QMainWindow

class Cacular(QMainWindow, Ui_MainWindow):
    """docstring for Cacular"""
    def __init__(self):
        super(Cacular, self).__init__()
        self.setupUi(self)
        self.connecter()
        self.show()

    def ps_CE(self):
        self.lineEdit.clear()

    def ps_Num_1(self):
        self.lineEdit.insert('1')

    def ps_Num_0(self):
        self.lineEdit.insert('0')

    def ps_Num_2(self):
        self.lineEdit.insert('2')

    def ps_Num_3(self):
        self.lineEdit.insert('3')

    def ps_Num_4(self):
        self.lineEdit.insert('4')

    def ps_Num_5(self):
        self.lineEdit.insert('5')

    def ps_Num_6(self):
        self.lineEdit.insert('6')

    def ps_Num_7(self):
        self.lineEdit.insert('7')

    def ps_Num_8(self):
        self.lineEdit.insert('8')

    def ps_Num_9(self):
        self.lineEdit.insert('9')

    def ps_plus(self):
        self.lineEdit.insert('+')

    def ps_minus(self):
        self.lineEdit.insert('-')

    def ps_multi(self):
        self.lineEdit.insert('*')

    def ps_devide(self):
        self.lineEdit.insert('/')

    def connecter(self):
        self.num_0.clicked.connect(self.ps_Num_0)
        self.num_1.clicked.connect(self.ps_Num_1)
        self.num_2.clicked.connect(self.ps_Num_2)
        self.num_3.clicked.connect(self.ps_Num_3)
        self.num_4.clicked.connect(self.ps_Num_4)
        self.num_5.clicked.connect(self.ps_Num_5)
        self.num_6.clicked.connect(self.ps_Num_6)
        self.num_7.clicked.connect(self.ps_Num_7)
        self.num_8.clicked.connect(self.ps_Num_8)
        self.num_9.clicked.connect(self.ps_Num_9)
        self.plus.clicked.connect(self.ps_plus)
        self.subtraction.clicked.connect(self.ps_minus)
        self.multiplication.clicked.connect(self.ps_multi)
        self.division.clicked.connect(self.ps_devide)
        self.equal.clicked.connect(self.calcu)
        self.eliminate.clicked.connect(self.ps_CE)

    def calcu(self):
        text = self.lineEdit.text()
        try:
            self.lineEdit.setText(str(eval(text)))
        except Exception as e:
            print(e)
            self.lineEdit.setText('invalid syntax, check your input!')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    Ca = Cacular()
    sys.exit(app.exec_())

 

三,打包成exe文件

将两个py文件和一张图片放到同一路径下,用命令行pyinstaller  -w  -F   文件名  就可以打包成 exe文件了   

 

 

 

 

 

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