最近初学wxPython,结果刚学就出问题了·_^有没有哪位大神帮忙看一下?
-- coding:utf-8 --·
import sys
import wx
import time
import json
class MyFrame(wx.Frame):
def init(self, parent, id):
wx.Frame.init(self, parent, id, ‘用户登录/注册’, size=(400, 300))
panel = wx.Panel(self)
self.title = wx.StaticText(panel, label="请输入用户名和密码", pos=(140, 20))
self.label_user = wx.StaticText(panel, label="用户名", pos=(50, 50))
self.text_user = wx.TextCtrl(panel, pos=(100, 50), size=(235, 25), style=wx.TE_LEFT)
self.label_password = wx.StaticText(panel, label="密 码", pos=(50, 90))
self.text_password = wx.TextCtrl(panel, pos=(100, 90), size=(235, 25), style=wx.TE_PASSWORD)
def OnclickSubmit(event, self):
"""单击确认,执行方法"""
#with open("Users.json", "r") as f:
# Dict = f.read()
#print(Dict)
#Users = []
#PassWords = []
#Dict = eval(Dict)
#for i in range(len(Dict)):
# Users = list(Dict.keys())
# PassWords = list(Dict.values())
un = self.text_user.GetValue()
ps = self.text_password.GetValue()
#with open("Users.json","a") as f:
# Dict = dict(f.read())
msg = ""
if un == "" or ps == "":
msg = "用户名或密码不能为空!"
elif un == "mgr" and ps == "123456":
msg = "登陆成功!"
else:
msg = "用户名与密码不匹配!"
wx.MessageBox(msg)
def cancel(self, event):
"""单击取消,执行方法"""
self.user_text.SetValue("")
self.password_text.StValue("")
wx.MessageBox("退出中...")
time.sleep(2)
sys.exit()
def button(self):
self.bt_confirm = wx.Button(panel, label="确定", pos=(195, 130))
self.bt_confirm.Bind(wx.EVT_BUTTON, -1, self.OnclickSubmit)
try:
print()
except:
print("按钮1报错")
self.bt_cancel.Bind(wx.EVT_BUTTON, -1, self.OnclickCancel)
try:
print()
except:
print("按钮2报错")
button(self)
try:
hsizer_user = wx.BoxSizer(wx.HORIZONTAL)
hsizer_user.Add(self.label_user, proportation=0, flag=wx.ALL, border=5)
hsizer_user.Add(self.text_user, proportation=1, flag=wx.ALL, border=5)
hsizer_pwd = wx.BoxSizer(wx.HORIZONTAL)
hsizer_pwd.Add(self.label_password, proportation=0, flag=wx.ALL, border=5)
hsizer_pwd.Add(self.text_password, proportation=1, flag=wx.ALL, border=5)
hsizer_button = wx.BoxSizer(wx.HORIZONTAL)
hsizer_button.Add(self.bt_confirm, proportation=0, flag=wx.ALIGN_CENTER, border=5)
hsizer_button.Add(self.bt_cancel, proportation=0, flag=wx.ALIGN_CENTER, border=5)
vsizer_all = wx.BoxSizer(wx.VERTICAL)
vsizer_all.Add(self.title, proportation=0, flag=wx.BOTTOM | wx.TOP | wx.ALIGN_CENTER, border=15)
vsizer_all.Add(hsizer_user, proportation=0, flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=45)
vsizer_all.Add(hsizer_pwd, proportation=0, flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=45)
vsizer_all.Add(hsizer_button, proportation=0, flag=wx.ALIGN_CENTER | wx.TOP, border=15)
panel.SetSizer(vsizer_all)
except:
print("BoxSizer报错")
if name == ‘main’:
app = wx.App()
frame = MyFrame(parent=None, id=-1)
frame.Show()
app.MainLoop()
主要就是绑定按钮时报找不到参数,请大神指导!