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文件了   

 

 

 

 

 

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