PyQt实战之计算器的实现

本文介绍了如何在Eric IDE中使用PyQt构建一个简单的计算器。首先,通过新建项目和Form来创建用户界面,接着利用QT Designer布局按钮,并通过生成Dialog代码添加自定义逻辑。最后,展示了计算器的运行效果。
摘要由CSDN通过智能技术生成

一.启动并进入eric主界面,如下图:
鼠标右键,”打开方式”选择“pthon.exe”
这里写图片描述

二.eric的主界面如下图所示:
选择“Project”–>”New”,设置如下图所示
这里写图片描述
点击“OK“,可以看到在source这一栏有个init.py这个文件,如下图所示
这里写图片描述
我们双击查看这个文件,发现这个init.py是个空文件,里面什么内容都没有。事实上这个init.py的作用只是让整个工程成为Python的一个包而已

三.选择”Form”选项卡
这里写图片描述
在空白处,鼠标右键选择”New Form“,弹出来一个框,如下图:
这里写图片描述
点击下拉列表后,
这里写图片描述
”随便“给这个新建的form取个名字,就可以在form选项卡下看到这个新建
的form了,如下图所示:
这里写图片描述
同时QT设计师也会自动打开,供你编辑这个.ui文件,然后拖动按钮,最终的效果图如下图所示:
这里写图片描述
保存全部“之后回到eric,右键点击calc1.ui,选择compile form
回到source选项卡,发现多了一个文件
这里写图片描述
这个文件就是刚才calc1.ui编译生成的文件,我们双击这个Ui_cal1.py可以看到它的内容,然后按F2运行,也可以直接进到Ui_cal1.py所在的目录,用python.exe运行,这两种方法都可以。运行效果如下:
这里写图片描述
注意:这个编译生成的Ui_cal1.py我们是不能修改的,因为他是编译自动生成的代码,即使你修改了到下次编译后你所做的修改也会全部丢失。实际上官方也不建议我们修改这个文件,在这个.py文件中,我们可以看到这样一句话:这里写图片描述
,翻译成中文就是”所有的修改都会被丢失“(请允许我卖弄一下自己的英文^_^)。

四.添加自定义代码
既然在那个文件中我们不能添加代码,那我应该在哪里添加自己的代码呢?
我们还是回到Form选项卡,右键点击calc1.ui(请原谅我无法截图),选择”Generate Dialog Code”,这个时候会弹出这样一个框,如图
这里写图片描述
我们单击New,设置好类名、文件名和路径后,点击OK即可,如下图
这里写图片描述
我们分别给每一个按钮添加slot(不明白slot的话建议先去学一下QT哦^_^),如下图所示:
这里写图片描述,添加好后,点击OK即可。
在回到这个source选项卡,我们就可以看到又多了一个py文件,如下图所示:
这里写图片描述
我们可以在这个文件中添加代码了,并且在这个文件中可以看到刚才我们添加的slot了。
这里写图片描述
计算器的代码很简单,这里直接上代码咯。

# -*- coding: utf-8 -*-

"""
Module implementing Calc.
"""
import sys
from PyQt4 import QtGui, QtCore
from PyQt4.QtGui import QWidget
from PyQt4.QtCore import pyqtSignature

from Ui_Calc import Ui_Form

class Calc(QWidget, Ui_Form):
    """
    Class documentation goes here.
    """
    num = 0
    num2 = 0
    add = False
    sub = False
    mul = False
    div = False

    def __init__(self, parent = None):
        """
        Constructor
        """
        QWidget.__init__(self, parent)
        self.setupUi(self)

    @pyqtSignature("
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值