wxpython 애플릿: qq 보안 센터 모방
8630 단어 wxPython
import wx
import random
import time
debug = True
class MyFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, "Validate Frame", size=(300,400), style=wx.CAPTION|wx.CLOSE_BOX|wx.MINIMIZE_BOX|wx.SYSTEM_MENU)
#self.SetMaxSize(wx.Size(300,400))
#self.SetMinSize(wx.Size(300,400))
self.panel = wx.Panel(self)
self.label_random = wx.StaticText(self.panel, -1, self.randcode(), pos=(70, 20))
self.label_random.SetForegroundColour("Red")
self.label_random.SetFont(wx.Font(28,wx.DEFAULT,wx.NORMAL, wx.BOLD))
'''clock'''
self.label_timer = wx.StaticText(self.panel, -1, "", pos=(110, 130))
self.timer2 = wx.Timer(self)
self.Bind(wx.EVT_TIMER, self.OnTimeChange, self.timer2)
self.timer2.Start(1000)
'''set time out'''
self.timer = wx.Timer(self)
self.Bind(wx.EVT_TIMER, self.ontimeout, self.timer)
self.timer.Start(8000)
self.label_validate = wx.StaticText(self.panel,-1, "Input Your Code",pos=(70, 200))
self.label_validate.SetFont(wx.Font(12, wx.DEFAULT, wx.NORMAL, wx.BOLD))
self.txtctrl_validate = wx.TextCtrl(self.panel, -1, "", pos=(90, 240))
self.btn_commit = wx.Button(self.panel, -1, "Validate", pos=(100,270))
self.Bind(wx.EVT_BUTTON, self.OnBtnClick, self.btn_commit)
#self.btn_commit.Disable()
self.Label_result = wx.StaticText(self.panel,-1, "",pos=(100, 330))
self.Label_result.SetForegroundColour("Red")
def OnBtnClick(self, event):
mycode = self.txtctrl_validate.GetValue()
if debug : print "Mycode: %s"%mycode
if mycode == self.label_random.GetLabel():
if debug : print "Ok"
self.timer.Stop()
msgbox = wx.MessageDialog(None, "Validate OK !", "Result", wx.OK | wx.ICON_INFORMATION)
if msgbox.ShowModal() == wx.ID_OK:
self.Close()
msgbox.Destroy()
else:
if debug : print "No compare"
self.Label_result.SetLabel("Not compare !")
def randcode(self):
return str(random.randint(100000,999999))
def ontimeout(self, event):
self.label_random.SetLabel(self.randcode())
self.Refresh()
def OnTimeChange(self, event):
t = time.localtime(time.time())
st = time.strftime("%I:%M:%S", t)
self.label_timer.SetLabel(st)
def OnKeyInput(self, event):
self.btn_commit.Enable()
if debug: print "Input keys: ",int(event.GetKeyCode())
keycode = event.GetKeyCode()
if keycode<255:
if chr(keycode).isalnum():
event.skip()
if __name__ == "__main__":
app = wx.PySimpleApp()
frame = MyFrame(None, -1)
frame.Show()
app.MainLoop()
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
wxpython 애플릿: qq 보안 센터 모방텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.