Python使用wxPython实现计算器
作者:云大 发布时间:2021-08-31 11:23:54
标签:python,wxPython,计算器
本文实例为大家分享了wxPython实现计算器的具体代码,供大家参考,具体内容如下
# -*- coding: utf-8 -*-
##########################################
## Python code generated with wxFormBuilder (version Feb 16 2016)
## http://www.wxformbuilder.org/
##
## PLEASE DO "NOT" EDIT THIS FILE!
##########################################
import wx
import wx.xrc
import math
#############################################
## Class MyFrame1
#############################################
class MyFrame1(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=wx.EmptyString, pos=wx.DefaultPosition,
size=wx.Size(486, 448), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
bSizer1 = wx.BoxSizer(wx.VERTICAL)
self.m_textCtrl1 = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size(600, 60), style=wx.TE_RIGHT)
self.m_textCtrl1.SetMinSize(wx.Size(470, 60))
bSizer1.Add(self.m_textCtrl1, 0, wx.ALL, 5)
bSizer2 = wx.BoxSizer(wx.HORIZONTAL)
self.m_button1 = wx.Button(self, wx.ID_ANY, u"退格", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer2.Add(self.m_button1, 0, wx.ALL, 5)
self.m_button2 = wx.Button(self, wx.ID_ANY, u"清屏", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer2.Add(self.m_button2, 0, wx.ALL, 5)
self.m_button3 = wx.Button(self, wx.ID_ANY, u"sqrt", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer2.Add(self.m_button3, 0, wx.ALL, 5)
self.m_button4 = wx.Button(self, wx.ID_ANY, u"/", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer2.Add(self.m_button4, 0, wx.ALL, 5)
bSizer1.Add(bSizer2, 0, wx.EXPAND, 5)
bSizer6 = wx.BoxSizer(wx.HORIZONTAL)
self.m_button10 = wx.Button(self, wx.ID_ANY, u"7", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer6.Add(self.m_button10, 0, wx.ALL, 5)
self.m_button11 = wx.Button(self, wx.ID_ANY, u"8", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer6.Add(self.m_button11, 0, wx.ALL, 5)
self.m_button12 = wx.Button(self, wx.ID_ANY, u"9", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer6.Add(self.m_button12, 0, wx.ALL, 5)
self.m_button13 = wx.Button(self, wx.ID_ANY, u"*", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer6.Add(self.m_button13, 0, wx.ALL, 5)
bSizer1.Add(bSizer6, 0, wx.EXPAND, 5)
bSizer7 = wx.BoxSizer(wx.HORIZONTAL)
self.m_button15 = wx.Button(self, wx.ID_ANY, u"4", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer7.Add(self.m_button15, 0, wx.ALL, 5)
self.m_button16 = wx.Button(self, wx.ID_ANY, u"5", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer7.Add(self.m_button16, 0, wx.ALL, 5)
self.m_button17 = wx.Button(self, wx.ID_ANY, u"6", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer7.Add(self.m_button17, 0, wx.ALL, 5)
self.m_button18 = wx.Button(self, wx.ID_ANY, u"-", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer7.Add(self.m_button18, 0, wx.ALL, 5)
bSizer1.Add(bSizer7, 0, wx.EXPAND, 5)
bSizer34 = wx.BoxSizer(wx.HORIZONTAL)
self.m_button140 = wx.Button(self, wx.ID_ANY, u"1", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer34.Add(self.m_button140, 0, wx.ALL, 5)
self.m_button141 = wx.Button(self, wx.ID_ANY, u"2", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer34.Add(self.m_button141, 0, wx.ALL, 5)
self.m_button142 = wx.Button(self, wx.ID_ANY, u"3", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer34.Add(self.m_button142, 0, wx.ALL, 5)
self.m_button143 = wx.Button(self, wx.ID_ANY, u"+", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer34.Add(self.m_button143, 0, wx.ALL, 5)
bSizer1.Add(bSizer34, 0, wx.EXPAND, 5)
bSizer35 = wx.BoxSizer(wx.HORIZONTAL)
self.m_button145 = wx.Button(self, wx.ID_ANY, u"0", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer35.Add(self.m_button145, 0, wx.ALL, 5)
self.m_button148 = wx.Button(self, wx.ID_ANY, u".", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer35.Add(self.m_button148, 0, wx.ALL, 5)
self.m_button149 = wx.Button(self, wx.ID_ANY, u"+/-", wx.DefaultPosition, wx.Size(110, 60), 0)
bSizer35.Add(self.m_button149, 0, wx.ALL, 5)
self.m_button150 = wx.Button(self, wx.ID_ANY, u"=", wx.DefaultPosition, wx.Size(110, 600), 0)
self.m_button150.SetMinSize(wx.Size(110, 60))
bSizer35.Add(self.m_button150, 0, wx.ALL, 5)
bSizer1.Add(bSizer35, 0, wx.EXPAND, 5)
self.SetSizer(bSizer1)
self.Layout()
self.Centre(wx.BOTH)
# Connect Events
self.m_button1.Bind(wx.EVT_BUTTON, self.m_button1OnButtonClick)
self.m_button2.Bind(wx.EVT_BUTTON, self.m_button2OnButtonClick)
self.m_button3.Bind(wx.EVT_BUTTON, self.m_button3OnButtonClick)
self.m_button4.Bind(wx.EVT_BUTTON, self.m_button4OnButtonClick)
self.m_button10.Bind(wx.EVT_BUTTON, self.m_button10OnButtonClick)
self.m_button11.Bind(wx.EVT_BUTTON, self.m_button11OnButtonClick)
self.m_button12.Bind(wx.EVT_BUTTON, self.m_button12OnButtonClick)
self.m_button13.Bind(wx.EVT_BUTTON, self.m_button13OnButtonClick)
self.m_button15.Bind(wx.EVT_BUTTON, self.m_button15OnButtonClick)
self.m_button16.Bind(wx.EVT_BUTTON, self.m_button16OnButtonClick)
self.m_button17.Bind(wx.EVT_BUTTON, self.m_button17OnButtonClick)
self.m_button18.Bind(wx.EVT_BUTTON, self.m_button18OnButtonClick)
self.m_button140.Bind(wx.EVT_BUTTON, self.m_button140OnButtonClick)
self.m_button141.Bind(wx.EVT_BUTTON, self.m_button141OnButtonClick)
self.m_button142.Bind(wx.EVT_BUTTON, self.m_button142OnButtonClick)
self.m_button143.Bind(wx.EVT_BUTTON, self.m_button143OnButtonClick)
self.m_button145.Bind(wx.EVT_BUTTON, self.m_button145OnButtonClick)
self.m_button148.Bind(wx.EVT_BUTTON, self.m_button148OnButtonClick)
self.m_button149.Bind(wx.EVT_BUTTON, self.m_button149OnButtonClick)
self.m_button150.Bind(wx.EVT_BUTTON, self.m_button150OnButtonClick)
def __del__(self):
pass
# Virtual event handlers, overide them in your derived class
def m_button1OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result[:-1]
self.m_textCtrl1.SetValue(result)
def m_button2OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=''
self.m_textCtrl1.SetValue(result)
def m_button3OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=int(result)
result=math.sqrt(result)
self.m_textCtrl1.SetValue(str(result))
def m_button4OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'/'
self.m_textCtrl1.SetValue(result)
def m_button10OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'7'
self.m_textCtrl1.SetValue(result)
def m_button11OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'8'
self.m_textCtrl1.SetValue(result)
def m_button12OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'9'
self.m_textCtrl1.SetValue(result)
def m_button13OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'*'
self.m_textCtrl1.SetValue(result)
def m_button15OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'4'
self.m_textCtrl1.SetValue(result)
def m_button16OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'5'
self.m_textCtrl1.SetValue(result)
def m_button17OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'6'
self.m_textCtrl1.SetValue(result)
def m_button18OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'-'
self.m_textCtrl1.SetValue(result)
def m_button140OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'1'
self.m_textCtrl1.SetValue(result)
def m_button141OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'2'
self.m_textCtrl1.SetValue(result)
def m_button142OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'3'
self.m_textCtrl1.SetValue(result)
def m_button143OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'+'
self.m_textCtrl1.SetValue(result)
def m_button145OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'0'
self.m_textCtrl1.SetValue(result)
def m_button148OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=result+'.'
self.m_textCtrl1.SetValue(result)
def m_button149OnButtonClick(self, event):
result=self.m_textCtrl1.GetValue()
result=-int(result)
self.m_textCtrl1.SetValue(str(result))
def m_button150OnButtonClick(self, event):
self.m_textCtrl1.SetValue(str(eval(self.m_textCtrl1.GetValue())))
app=wx.App()
window=MyFrame1(None)
window.Show(True)
app.MainLoop()
来源:http://blog.csdn.net/qq_37702781/article/details/77585036


猜你喜欢
- 引言第一次了解python的WSGI,可能描述的不太准确。本篇文章所依赖的python环境为:什么是WSGIWSGI也称之为web服务器通用
- Python 的 Queue 模块中提供了同步的、线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列Lifo
- 1、操作步骤(1)打开文件读取整个文件函数open返回一个表示文件的对象,对象存储在infile中。关键字with在不需要访问文件时将其自动
- python中有指定的代码进行输入操作,所以今天就由小编来为大家介绍python怎么实现键盘输入。第一首先打开电脑的python编辑工具。再
- proxytable代理根路径的同时增加其他代理Vue 项目有一个需求,需要对根路径 ‘/’ 进行代
- 前言在 Go 单元测试这个系列的第二部分 数据库的Mock测试 中我们介绍了用 go-sqlmock 给数据库的 CRUD 操作做Mock
- 字典的添加与修改# coding:utf-8if __name__ == '__main__':
- 前言:如果使用进到的日志文件方法:logging.FileHandler,会导致日志信息全部存放在一个日志文件中,不利于后面对日志文件的使用
- 你好,%用户名%!我叫Alex,我在机器学习和网络图分析(主要是理论)有所涉猎。我同时在为一家俄罗斯移动运营商开发大数据产品。这是我第一次在
- Python 语言与 Perl,C 和 Java 等语言有许多相似之处,也有一定的差异性,以下是Python语言获取文件后缀名和文件名的方法
- 一个用asp来处理jmail发信的过程,及使用方法. 发信时,直接调用这个过程就行了,很方便。<% dim
- 不知道大家在做网站时有没有给目录名或者文件名添加”( )”的习惯,有则改之,无则加勉。因为他有潜在的危险,起码就被我遇到了。要使页面能够使用
- 一、innodb行锁分类 record lock:记录锁,也就是仅仅锁着单独的一行 gap lock:区间锁,仅仅锁住一个区间(注意这里的区
- defer用于资源的释放,会在函数返回之前进行调用。如果有多个defer表达式,调用顺序类似于栈,越后面的defer表达式越先被调用。def
- 本文实例讲述了PHP实现mysqli批量执行多条语句的方法。分享给大家供大家参考,具体如下:可以一次性的执行多个操作或取回多个结果集。实例:
- 1. 为什么要使用正则表达式?首先,大家来看一个例子。一个文本文件里面存储了一些市场职位信息,格式如下所示:Python3 高级开发工程师
- 前言如果你对数据分析有一定的了解,那你一定听说过一些亲民好用的数据分析的工具,如Excel、Tableau、PowerBI等等等等,它们都是
- 一般常用的有两个方法:1、使用DataFrame.index = [newName],DataFrame.columns = [newNam
- 1 以下代码的输出结果为:print(round(-3.6))A.-4B.-4.0C.-3D. -3.02 以下代码的输出结果为(Pytho
- 前言现在最流行的本地存储莫过于 cookie 的应用,但浏览器对 cookie 有很多限制,最大的限制在于其对cookie 总大小