wxPython写计算器
2015-06-16 15:37
591 查看
''' Created on 2015-6-16 @author: jianan ''' #!/usr/bin/python # -*- coding: utf-8 -*- # calculator.py import wx class Example(wx.Frame): bianliang1 = '0' bianliang2 = '0' judge = "" def __init__(self, parent, title): super(Example, self).__init__(parent, title=title, size=(300, 250)) self.InitUI() self.Centre() self.Show() def OnButtonClick0(self, event): var = self.display.GetValue() var = int(var)*10 + 0 self.display.Value = str(var) def OnButtonClick1(self, event): var = self.display.GetValue() var = int(var)*10 + 1 self.display.Value = str(var) def OnButtonClick2(self, event): var = self.display.GetValue() var = int(var)*10 + 2 self.display.Value = str(var) def OnButtonClick3(self, event): var = self.display.GetValue() var = int(var)*10 + 3 self.display.Value = str(var) def OnButtonClick4(self, event): var = self.display.GetValue() var = int(var)*10 + 4 self.display.Value = str(var) def OnButtonClick5(self, event): var = self.display.GetValue() var = int(var)*10 + 5 self.display.Value = str(var) def OnButtonClick6(self, event): var = self.display.GetValue() var = int(var)*10 + 6 self.display.Value = str(var) def OnButtonClick7(self, event): var = self.display.GetValue() var = int(var)*10 + 7 self.display.Value = str(var) def OnButtonClick8(self, event): var = self.display.GetValue() var = int(var)*10 + 8 self.display.Value = str(var) def OnButtonClick9(self, event): var = self.display.GetValue() var = int(var)*10 + 9 self.display.Value = str(var) def OnButtonCls(self, event): self.display.Value = '0' def OnButtonBck(self, event): var = self.display.GetValue() var = int(var)/10 self.display.Value = str(var) def OnButtonClickClose(self, event): wx.Exit() def OnButtonClickJia(self, event): self.bianliang1 = self.display.GetValue() self.display.Value = '0' self.judge="+" def OnButtonClickJian(self, event): self.bianliang1 = self.display.GetValue() self.display.Value = '0' self.judge="-" def OnButtonClickChe(self, event): self.bianliang1 = self.display.GetValue() self.display.Value = '0' self.judge="*" def OnButtonClickChu(self, event): self.bianliang1 = self.display.GetValue() self.display.Value = '0' self.judge="/" def OnButtonClickEqu(self, event): bianliang2 = self.display.GetValue() if self.judge == '+': self.display.Value = str(int(self.bianliang1)+int(bianliang2)) elif self.judge == '-': self.display.Value = str(int(self.bianliang1)-int(bianliang2)) elif self.judge == '*': self.display.Value = str(int(self.bianliang1)*int(bianliang2)) elif self.judge == '/': self.display.Value = str(int(self.bianliang1)/int(bianliang2)) def InitUI(self): menubar = wx.MenuBar() fileMenu = wx.Menu() menubar.Append(fileMenu, '&File') self.SetMenuBar(menubar) vbox = wx.BoxSizer(wx.VERTICAL) self.display = wx.TextCtrl(self, style=wx.TE_RIGHT,value='0') vbox.Add(self.display, flag=wx.EXPAND|wx.TOP|wx.BOTTOM, border=4) gs = wx.GridSizer(5, 5, 5, 5) buttonCls = wx.Button(self, label='Cls') buttonBck = wx.Button(self, label='Bck') buttonClose = wx.Button(self, label='Close') button7 = wx.Button(self, label='7') button8 = wx.Button(self, label='8') button9 = wx.Button(self, label='9') buttonChu = wx.Button(self, label='/') button4 = wx.Button(self, label='4') button5 = wx.Button(self, label='5') button6 = wx.Button(self, label='6') buttonChen = wx.Button(self, label='*') button1 = wx.Button(self, label='1') button2 = wx.Button(self, label='2') button3 = wx.Button(self, label='3') buttonJian = wx.Button(self, label='-') button0 = wx.Button(self, label='0') buttonDot = wx.Button(self, label='.') buttonEqu = wx.Button(self, label='=') buttonPlus = wx.Button(self, label='+') gs.AddMany([ (buttonCls, 0, wx.EXPAND), (buttonBck, 0, wx.EXPAND), (wx.StaticText(self), wx.EXPAND), (buttonClose, 0, wx.EXPAND), (button7, 0, wx.EXPAND), (button8, 0, wx.EXPAND), (button9, 0, wx.EXPAND), (buttonChu, 0, wx.EXPAND), (button4, 0, wx.EXPAND), (button5, 0, wx.EXPAND), (button6, 0, wx.EXPAND), (buttonChen, 0, wx.EXPAND), (button1, 0, wx.EXPAND), (button2, 0, wx.EXPAND), (button3, 0, wx.EXPAND), (buttonJian, 0, wx.EXPAND), (button0, 0, wx.EXPAND), (buttonDot, 0, wx.EXPAND), (buttonEqu, 0, wx.EXPAND), (buttonPlus, 0, wx.EXPAND) ]) buttonCls.Bind(wx.EVT_BUTTON,self.OnButtonCls) buttonBck.Bind(wx.EVT_BUTTON,self.OnButtonBck) buttonClose.Bind(wx.EVT_BUTTON,self.OnButtonClickClose) button0.Bind(wx.EVT_BUTTON,self.OnButtonClick0) button1.Bind(wx.EVT_BUTTON,self.OnButtonClick1) button2.Bind(wx.EVT_BUTTON,self.OnButtonClick2) button3.Bind(wx.EVT_BUTTON,self.OnButtonClick3) button4.Bind(wx.EVT_BUTTON,self.OnButtonClick4) button5.Bind(wx.EVT_BUTTON,self.OnButtonClick5) button6.Bind(wx.EVT_BUTTON,self.OnButtonClick6) button7.Bind(wx.EVT_BUTTON,self.OnButtonClick7) button8.Bind(wx.EVT_BUTTON,self.OnButtonClick8) button9.Bind(wx.EVT_BUTTON,self.OnButtonClick9) buttonEqu.Bind(wx.EVT_BUTTON,self.OnButtonClickEqu) buttonPlus.Bind(wx.EVT_BUTTON,self.OnButtonClickJia) buttonJian.Bind(wx.EVT_BUTTON,self.OnButtonClickJian) buttonChen.Bind(wx.EVT_BUTTON,self.OnButtonClickChe) buttonChu.Bind(wx.EVT_BUTTON,self.OnButtonClickChu) vbox.Add(gs, proportion=1, flag=wx.EXPAND) self.SetSizer(vbox) app = wx.App() Example(None, title='Calculator') app.MainLoop()
相关文章推荐
- python 单实例一个类
- 一道简单的python题--Triangle Quest
- Python 的 urllib2
- python格式化操作符
- wxPython使用系统剪切板的方法
- Python爬行动物(一):基本概念
- Python Web框架Django (零)
- Python 2.7.6 配置 OpenCV 2.4.9方法
- 用python map函数实现pharmdock并行运算
- Python学习(四)---序列生成range函数、循环
- python学习笔记(二)
- Python学习(三)---常见类型转换、数值操作、序列操作
- Python学习(二)---使用list和tuple
- python virtualenv
- Python_python2_Pycharm. 在Pycharm中出现的中文编码问题
- [python]python错误集锦
- (转)windows 下 Java 及 Python 环境变量设置
- Python OS 文件操作模块常用函数
- python爬51cto某一课程表
- Python中__init__方法注意点