#!/usr/bin/python
#coding: utf-8
import wx
class MyFrame(wx.Frame):
"整体框架"
# 声明一个类变量
labels = "1 2 3 + 4 5 6 - 7 8 9 * 0 . = /"
def __init__(self):
super(MyFrame, self).__init__(None, -1, "Calc", style=wx.DEFAULT_FRAME_STYLE ^ (
wx.RESIZE_BORDER | wx.MINIMIZE_BOX | wx.MAXIMIZE_BOX))
panel = wx.Panel(self, -1, size = (400, 300))
sizer = wx.GridBagSizer(hgap=5, vgap=4)
self.button = wx.Button(panel, -1, u"AC", size = (50, 25))
self.button.Bind(wx.EVT_BUTTON, self.OnAC)
sizer.Add(self.button, pos=(0, 0), span=(1, 1), flag=wx.EXPAND)
self.text = wx.TextCtrl(panel, -1, u"0")
self.text.Enable(False)
sizer.Add(self.text, pos = (0, 1), span = (1, 3), flag = wx.EXPAND)
num = 0
for row in range(1, 5):
for col in range(4):
self.btn = wx.Button(panel, -1, label = self.labels.split()[num],size = (50, 50))
sizer.Add(self.btn, pos = (row, col))
num += 1
self.btn.Bind(wx.EVT_BUTTON, self.OnButton2)
self.SetSizer(sizer)
self.Fit()
def OnAC(self, event):
self.text.SetValue("0")
def OnButton2(self, event):
pass
if __name__ == "__main__":
app = wx.App()
frame = MyFrame()
frame.Show(True)
app.MainLoop()
wxpython计算器框架
最新推荐文章于 2023-07-04 16:51:24 发布