def help(self): """Help for the widget.""" import Dialog d = Dialog.Dialog( None, { 'title': 'Viewer help', 'text': 'Button-1: Translate\n' 'Button-2: Rotate\n' 'Button-3: Zoom\n' 'Reset: Resets transformation to identity\n', 'bitmap': 'questhead', 'default': 0, 'strings': ('Done', 'Ok') })
def get(self): """ @returns: the current value displayed in the field @rtype: C{int} @raises ValueError: if the current value is not a valid number or is not within the specified limits """ value = FloatEntry.get(self) ivalue = int(value) if ivalue != value: Dialog.Dialog(self, title='Illegal value', text='The value of "' + self.name + '" must be an integer.', bitmap='warning', default=0, strings=('Cancel', )) raise ValueError return ivalue
def check(): user_data.execute("select id, pw from user") for id, pw in user_data.fetchall(): pass if login_id.get() == id and login_pw.get() == pw: l1.pack_forget() llf.pack_forget() llf2.pack_forget() llf3.pack_forget() note.pack() m2.entryconfigure(u'セキュリティ', state = 'normal') m2.entryconfigure(u'ユーザー管理', state = 'normal') cur.execute("select site from account") for site in cur.fetchall(): lb.insert('end', site) deletelb.insert('end', site) else: Dialog.Dialog(root, title = 'error', bitmap = 'info', text = u'ID又はパスワードが違います', strings = ['OK'], default = 0)
def popConfirmDeposit(): depoistUserInfo = None if (len(depositNameField.get()) > 0): depoistUserInfo = DBOperations.getUserInfoByName( depositNameField.get()) elif (len(depositPhoneField.get()) > 0): depoistUserInfo = DBOperations.getUserInfoByMobile( depositPhoneField.get()) elif (len(depositNumberField.get()) > 0): depoistUserInfo = DBOperations.getUserInfoByNO( depositNumberField.get()) if (depoistUserInfo != None): addWindow = Toplevel() addWindow.wm_title('确认信息') addWindow.geometry('200x100+600+150') footer = Frame(addWindow) footer.pack(side='bottom', fill=X) #姓名 printerStr = '姓名:'+ depoistUserInfo.name + '\n' + '项目: 充值' + '\n' \ + '总消费金额:' + str(depositAmountField.get()) + '¥' printerText = Label(addWindow, text=printerStr, bg='white').pack(side='top') cancelBtn = Button(footer, text='取消', command=lambda m=addWindow: termiantWindow(m)) printBtn = Button( footer, text='确定', command=lambda m=addWindow: confirmDeposit(m, depoistUserInfo)) cancelBtn.pack(side='left', anchor=SW) printBtn.pack(side='right', anchor=SE) else: Dialog(frame, title='提示', text='请补全信息', bitmap=DIALOG_ICON, default=0, strings=('取消', '确定'))
def On_Send_Clear(self, event): global MSG_RECV_GROUP rsp = None msg = self.msg_send.GetValue().encode('utf-8') send_data = Constant.SEND_RECV_REQ_SUC_RSP_GRO + \ chr(len(str(Login.USERID))) + \ str(Login.USERID) + \ chr(len(str(FriendList.GROUP_ID))) + \ str(FriendList.GROUP_ID) + \ chr(len(msg)) + \ msg try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((Login.SERVER_IP, int(Login.SERVER_PORT))) sock.send(send_data) rsp = sock.recv(16) except Exception, e: self.isSuccess = False dialog = Dialog.Dialog(None, u"错误", e.message, 200, 150, 30, 60) dialog.Centre() dialog.Show()
def login(): aa = actname.get() bb = actpwc.get() try: a = open('%spw.dat' % aa, 'r') except IOError: Dialog.Dialog(root, title='error', bitmap='info', text=u'入力したIDが存在しないかパスワードが違います', strings=['OK'], default=0) actpwc.set('') else: for i in a: i == i if aa and bb == i: filecheck() actpwc.set('') w2.destroy() a.close()
def out(): a = open('%setc1.dat' % actname.get(), 'r') for i in a: i == i if i == 'able': global w3 w3 = Toplevel() lb = Listbox(w3, width=60) lb.insert( END, 'まずウィンドウを出すモジュールとしてTkinterがある。from Tkinter import *と打てば使えるようになる') lb.insert(END, '親ウィンドウを作る設定をする。root = Tk()でおk') lb.insert( END, '次にウィンドウに配置する文字はLabelを使う。Label(root, text = ' ').pack() textに書きたい文字を書く') lb.insert( END, 'ウィンドウにボタンを配置する場合はButton。Button(root, text = ' ', command = ).pack() commandはボタンを押したときの処理') lb.insert( END, '文字入力をさせる場合はEntry。ここでa = StringVar()を作る必要がある。Entry(root, textvariable = a).pack()' ) lb.insert(END, '処理はたいていdefでdef 関数名():Tab 処理となる。') lb.insert( END, '.pack()を忘れるとボタンやラベルは表示されない。ボタンやラベルに変数をつけて、変数.pack()でも構わない。') lb.insert(END, '最後に必ずroot.mainloop()を入れないとウィンドウすら出てこない。続きはⅡで。') sb1 = Scrollbar(w3, orient='v', command=lb.yview) sb2 = Scrollbar(w3, orient='h', command=lb.xview) lb.configure(yscrollcommand=sb1.set) lb.configure(xscrollcommand=sb2.set) lb.grid(row=1, column=0, sticky='nsew') sb1.grid(row=1, column=1, sticky='ns') sb2.grid(row=2, column=0, sticky='ew') else: Dialog.Dialog(root, title='alert', bitmap='info', text=u'パックを購入してください', strings=['OK'], default=0)
def setTarget(self, window): if self.dialog == -1: self.gotoPattern() else: key = pygame.key.get_pressed() dialogobj = Dialog.Dialog(100, self.dialogfile, self.dialog) if key[pygame.K_SPACE]: if not self.spacepressed: self.dialog = (self.dialog + 2) % dialogobj.maxLines() - 1 if self.dialog == -1: self.entities[0].moving = True self.spacepressed = True else: self.spacepressed = False dialogobj.box(window) target = [self.position.x, self.position.y] angle = 0 if self.entities[0].position.x != self.position.x: angle = -math.atan((self.entities[0].position.y - self.position.y)/(self.entities[0].position.x - self.position.x)) else: if self.position.y >= self.entities[0].position.y: angle = -math.pi/2 else: angle = math.pi/2 if self.position.x <= self.entities[0].position.x: if angle >= math.pi/4: self.anim = 2 elif angle <= -math.pi/4: self.anim = 0 else: self.anim = 3 else: if angle >= math.pi/4: self.anim = 0 elif angle <= -math.pi/4: self.anim = 2 else: self.anim = 1
def generateInterrogationWarnings(self): dialogItemList = [] finalWarningDialog = Dialog('InterrogationWarnings') itemIW1 = OutputItem('IW1') outputAction = OutputAction('', '') pattern = Pattern( 'This is your first warning. You have two attemps left') outputAction.setPattern(pattern) itemIW1.setOutputAction(outputAction) dialogItemList.append(itemIW1) itemIW2 = OutputItem('IW2') outputAction = OutputAction('', '') pattern = Pattern( 'This is your second warning. You better get this right') outputAction.setPattern(pattern) itemIW2.setOutputAction(outputAction) dialogItemList.append(itemIW2) finalWarningDialog.setDialogItemList(dialogItemList) self.dialogList.append(finalWarningDialog)
def doTempCleanupChoice(): numTempFiles = 0 for dir in os.listdir(TEMP_FILE_PATH): for file in os.listdir(os.path.join(TEMP_FILE_PATH, dir)): numTempFiles += 1 if (numTempFiles > 10): dialog = Dialog.Dialog( None, { 'title': "Temporary Files", 'text': str(numTempFiles) + " temporary files were found" + " in the session folder:\n" + TEMP_FILE_PATH + "\n\nIf you are NOT running another instance of AToM3" + " you may safely delete them", 'bitmap': '', 'default': 1, 'strings': ('Delete!', 'Cancel') }) if (dialog.num == 0): TempFileManager().destroyDirContents(TEMP_FILE_PATH)
def out2(): a = open('%setc2.dat' % actname.get(), 'r') for i in a: i == i if i == 'able': global w3 w3 = Toplevel() lb = Listbox(w3, width=60) lb.insert(END, '前回は配置だけだったが、今回は処理について説明:') sb1 = Scrollbar(w3, orient='v', command=lb.yview) sb2 = Scrollbar(w3, orient='h', command=lb.xview) lb.configure(yscrollcommand=sb1.set) lb.configure(xscrollcommand=sb2.set) lb.grid(row=1, column=0, sticky='nsew') sb1.grid(row=1, column=1, sticky='ns') sb2.grid(row=2, column=0, sticky='ew') else: Dialog.Dialog(root, title='alert', bitmap='info', text=u'パックを購入してください', strings=['OK'], default=0)
def searchsys(): try: rf2.pack_forget() rf3.pack_forget() rf4.pack_forget() except: pass cur.execute('select count (*) from account where site like "%s"' % pwsearch.get()) for count in cur.fetchone(): if count > 0: cur.execute('select id, pw, site from account where site like "%s"' % pwsearch.get()) for id, pw, site in cur.fetchall(): r_id.set(id) r_pw.set(pw) r_title.set(site) rf2.pack() rf3.pack() rf4.pack() else: Dialog.Dialog(root, title = 'error', bitmap = 'info', text = u'一致するアカウントがありません', strings = ['OK'], default = 0) os.chdir(currentdir)
def popConfirm(): addUserInfo = DBOperations.getUserInfoByName(memberNameField.get()) if (addUserInfo == None): addUserInfo = DBOperations.getUserInfoByMobile(memberPhoneField.get()) if (addUserInfo == None): addUserInfo = DBOperations.getUserInfoByNO(memberNOField.get()) #姓名 if (addUserInfo == None): addWindow = Toplevel() addWindow.wm_title('确认信息') addWindow.geometry('200x100+600+150') footer = Frame(addWindow) footer.pack(side='bottom', fill=X) printerStr = '姓名:'+ memberNameField.get() \ + '\n' + '项目: 添加用户' + '\n' \ + '初始金额:' + str(memberAmontField.get()) +'¥' printerText = Label(addWindow, text=printerStr, bg='white').pack(side='top') cancelBtn = Button(footer, text='取消', command=lambda m=addWindow: termiantWindow(m)) printBtn = Button(footer, text='确定', command=lambda m=addWindow: confirmAdd(m)) cancelBtn.pack(side='left', anchor=SW) printBtn.pack(side='right', anchor=SE) else: dialogView = Dialog(frame, title='提示', text='该用户已经存在', bitmap=DIALOG_ICON, default=0, strings=('取消', '确定'))
def showHelpSelectionDialog(helpFileNameList): """ Please call HelpDialog, not this method Multiple help documents? How do we choose? Dialog time! """ root = None title = 'Help Dialog' text = 'Several help documents are available...' buttons = helpFileNameList + ['Cancel'] default = 0 bitmap = '' response = Dialog.Dialog( root, { 'title': title, 'text': text, 'bitmap': bitmap, 'default': default, 'strings': buttons }).num # User cancelled if (response == len(helpFileNameList)): return # Display the help text showHelpText(helpFileNameList[response])
def errorPanel(*L): """Pop up an error panel, wait for a mouse click, then return. [ (we can pop up new windows) and (L is a list of strings) -> <screen> := <screen> with a new popup displaying the concatenation of the elements of L, with a `dismiss' button ] """ #-- 1 -- # [ message := concatenation of elements of L ] message = "".join(L) #-- 2 -- # [ we can pop up new windows -> # <screen> := <screen> with a new popup displaying message, # with a `dismiss' button ] d = Dialog( title="Message", bitmap="info", text=message, default=0, # First button is the default strings=("OK", )) # Only one button: OK
Entry(w2, textvariable=actname).pack() Entry(w2, textvariable=actpwc, show='*').pack() Label(w2, textvariable=buf).pack() b1 = Button(w2, text=u'ログイン', command=homet) b1.pack() b1.bind('<Return>', homett) b1.focus_set() Button(w2, text=u'終了', command=sys.exit).pack() try: of = open('License.dat', 'r') except IOError: Dialog.Dialog(root, title='alert', bitmap='info', text=u'ライセンス認証プログラムでライセンス認証されていないため、本ソフトを起動できませんでした。終了します', strings=['OK'], default=0) sys.exit() else: for of2 in of: of2 == of2 if of2 == 'disable': Dialog.Dialog( root, title='alert', bitmap='info', text=u'ライセンス認証プログラムでライセンス認証されていないため、本ソフトを起動できませんでした。終了します', strings=['OK'], default=0) sys.exit()
def save(): os.chdir(currentdir) try: os.chdir("Timetable") except WindowsError: Dialog.Dialog(root, title = u'エラー', bitmap = 'info', text = u'時間割のデータが見つかりません', strings = ['OK'], default = 0) else: if st3.get() == '': st3.set(u'タイトルがありません') f1 = codecs.open('title.dat', 'w', 'shift-jis') f1.write(st3.get()) f1.close() if st4.get() == '': st4.set(' ') f2 = codecs.open('time of lesson1.dat', 'w', 'shift-jis') f2.write(st4.get()) f2.close() if st5.get() == '': st5.set(' ') f3 = codecs.open('time of lesson2.dat', 'w', 'shift-jis') f3.write(st5.get()) f3.close() if st6.get() == '': st6.set(' ') f4 = codecs.open('time of lesson3.dat', 'w', 'shift-jis') f4.write(st6.get()) f4.close() if st7.get() == '': st7.set(' ') f5 = codecs.open('time of lesson4.dat', 'w', 'shift-jis') f5.write(st7.get()) f5.close() if st8.get() == '': st8.set(' ') f6 = codecs.open('time of lesson5.dat', 'w', 'shift-jis') f6.write(st8.get()) f6.close() if st9.get() == '': st9.set(' ') f7 = codecs.open('time of lesson6.dat', 'w', 'shift-jis') f7.write(st9.get()) f7.close() if st10.get() == '': st10.set(' ') f8 = codecs.open('Monper1.dat', 'w', 'shift-jis') f8.write(st10.get()) f8.close() if st11.get() == '': st11.set(' ') f9 = codecs.open('Monper2.dat', 'w', 'shift-jis') f9.write(st11.get()) f9.close() if st12.get() == '': st12.set(' ') f10 = codecs.open('Monper3.dat', 'w', 'shift-jis') f10.write(st12.get()) f10.close() if st13.get() == '': st13.set(' ') f11 = codecs.open('Monper4.dat', 'w', 'shift-jis') f11.write(st13.get()) f11.close() if st14.get() == '': st14.set(' ') f12 = codecs.open('Monper5.dat', 'w', 'shift-jis') f12.write(st14.get()) f12.close() if st15.get() == '': st15.set(' ') f13 = codecs.open('Monper6.dat', 'w', 'shift-jis') f13.write(st15.get()) f13.close() if st16.get() == '': st16.set(' ') f14 = codecs.open('Tueper1.dat', 'w', 'shift-jis') f14.write(st16.get()) f14.close() if st17.get() == '': st17.set(' ') f15 = codecs.open('Tueper2.dat', 'w', 'shift-jis') f15.write(st17.get()) f15.close() if st18.get() == '': st18.set(' ') f16 = codecs.open('Tueper3.dat', 'w', 'shift-jis') f16.write(st18.get()) f16.close() if st19.get() == '': st19.set(' ') f17 = codecs.open('Tueper4.dat', 'w', 'shift-jis') f17.write(st19.get()) f17.close() if st20.get() == '': st20.set(' ') f18 = codecs.open('Tueper5.dat', 'w', 'shift-jis') f18.write(st20.get()) f18.close() if st21.get() == '': st21.set(' ') f19 = codecs.open('Tueper6.dat', 'w', 'shift-jis') f19.write(st21.get()) f19.close() if st22.get() == '': st22.set(' ') f20 = codecs.open('Wedper1.dat', 'w', 'shift-jis') f20.write(st22.get()) f20.close() if st23.get() == '': st23.set(' ') f21 = codecs.open('Wedper2.dat', 'w', 'shift-jis') f21.write(st23.get()) f21.close() if st24.get() == '': st24.set(' ') f22 = codecs.open('Wedper3.dat', 'w', 'shift-jis') f22.write(st24.get()) f22.close() if st25.get() == '': st25.set(' ') f23 = codecs.open('Wedper4.dat', 'w', 'shift-jis') f23.write(st25.get()) f23.close() if st26.get() == '': st26.set(' ') f24 = codecs.open('Wedper5.dat', 'w', 'shift-jis') f24.write(st26.get()) f24.close() if st27.get() == '': st27.set(' ') f25 = codecs.open('Wedper6.dat', 'w', 'shift-jis') f25.write(st27.get()) f25.close() if st28.get() == '': st28.set(' ') f26 = codecs.open('Thuper1.dat', 'w', 'shift-jis') f26.write(st28.get()) f26.close() if st29.get() == '': st29.set(' ') f27 = codecs.open('Thuper2.dat', 'w', 'shift-jis') f27.write(st29.get()) f27.close() if st30.get() == '': st30.set(' ') f28 = codecs.open('Thuper3.dat', 'w', 'shift-jis') f28.write(st30.get()) f28.close() if st31.get() == '': st31.set(' ') f29 = codecs.open('Thuper4.dat', 'w', 'shift-jis') f29.write(st31.get()) f29.close() if st32.get() == '': st32.set(' ') f30 = codecs.open('Thuper5.dat', 'w', 'shift-jis') f30.write(st32.get()) f30.close() if st33.get() == '': st33.set(' ') f31 = codecs.open('Thuper6.dat', 'w', 'shift-jis') f31.write(st33.get()) f31.close() if st34.get() == '': st34.set(' ') f32 = codecs.open('Friper1.dat', 'w', 'shift-jis') f32.write(st34.get()) f32.close() if st35.get() == '': st35.set(' ') f33 = codecs.open('Friper2.dat', 'w', 'shift-jis') f33.write(st35.get()) f33.close() if st36.get() == '': st36.set(' ') f34 = codecs.open('Friper3.dat', 'w', 'shift-jis') f34.write(st36.get()) f34.close() if st37.get() == '': st37.set(' ') f35 = codecs.open('Friper4.dat', 'w', 'shift-jis') f35.write(st37.get()) f35.close() if st38.get() == '': st38.set(' ') f36 = codecs.open('Friper5.dat', 'w', 'shift-jis') f36.write(st38.get()) f36.close() if st39.get() == '': st39.set(' ') f37 = codecs.open('Friper6.dat', 'w', 'shift-jis') f37.write(st39.get()) f37.close() if st40.get() == '': st40.set(' ') f38 = codecs.open('Satper1.dat', 'w', 'shift-jis') f38.write(st40.get()) f38.close() if st41.get() == '': st41.set(' ') f39 = codecs.open('Satper2.dat', 'w', 'shift-jis') f39.write(st40.get()) f39.close() if st42.get() == '': st42.set(' ') f40 = codecs.open('Satper3.dat', 'w', 'shift-jis') f40.write(st42.get()) f40.close() if st43.get() == '': st43.set(' ') f41 = codecs.open('Satper4.dat', 'w', 'shift-jis') f41.write(st43.get()) f41.close() if st44.get() == '': st44.set(' ') f42 = codecs.open('Satper5.dat', 'w', 'shift-jis') f42.write(st42.get()) f42.close() if st45.get() == '': st45.set(' ') f43 = codecs.open('Satper6.dat', 'w', 'shift-jis') f43.write(st45.get()) f43.close() os.chdir(currentdir)
def complain(ctext): d = TinyDialog.Dialog(title="Warning", text=ctext, bitmap='warning', default=0, strings=("OK", ))
from Tkinter import * if __name__ == '__main__': fvwm = Fvwm.FvwmModule(sys.argv) # the Dialog object doesn't do a proper global server grab, so we # need to use this kludge instead. Yes, this is bogus, the # tempfile module doesn't exactly have the interface we want. :-( tempdir = os.path.split(tempfile.mktemp())[0] file = os.path.join(tempdir, 'Pyquiter-' + os.environ['DISPLAY']) if os.path.exists(file): fvwm.send('Beep', cont=0) sys.exit(0) # # create the lock file # try: fp = open(file, 'w') master = Tk(className='Pyquiter') master.withdraw() d = Dialog.Dialog(master, title='Confirm Fvwm Quit', text='Do you really want to quit Fvwm?', bitmap=Dialog.DIALOG_ICON, default=0, strings=('No (cancel)', 'Yes (quit)')) if d.num == 1: fvwm.send('Quit', cont=0) finally: fp.close() os.unlink(file)
sock.connect((Login.SERVER_IP, int(Login.SERVER_PORT))) sock.send(send_data) rsp = sock.recv(1024) except Exception, e: self.isSuccess = False dialog = Dialog.Dialog(None, u"错误", e.message, 200, 150, 30, 60) dialog.Centre() dialog.Show() finally: sock.close() self.Close() if self.isSuccess: if Constant.SVR_RSP_ADD_FRI_ERR_NOT_EXI == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"该好友不存在", 200, 150, 40, 60) dialog.Centre() dialog.Show() elif Constant.SVR_RSP_ADD_FRI_ERR_AGN == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"该好友已被添加", 200, 150, 40, 60) dialog.Centre() dialog.Show() elif Constant.ADD_FRI_REQ_SUC_RSP == rsp[0]: dialog = Dialog.Dialog(None, u"信息", u"添加好友成功", 200, 150, 40, 60) dialog.Centre() dialog.Show() else: dialog = Dialog.Dialog(None, u"错误", u"登录收到无效响应", 200, 150, 40, 60)
def createid(): os.chdir(Paths) if not os.path.exists("%s\\Users\\user2" % Paths): if actname.get() and actpw.get() and actpwc.get() != "": if actpw.get() == actpwc.get(): try: e1 = enckey.encrypt(actpw.get()) except ValueError: pwcon.set(u'パスワードは8文字で入力してください') else: if actpw.get() and actpwc.get() and actpw.get() == actpwc.get(): idf = ids os.chdir("Users") os.mkdir("user2") os.chdir("user2") os.mkdir("ad") os.mkdir("Market") os.mkdir("Memo") a = open('user.dat', 'w') c = open('money.dat', 'w') i = open('pw.dat', 'w') a.write(actname.get()) e1 = enckey.encrypt(actpw.get()) i.write(e1) c.write(str(0)) a.close() c.close() i.close() try: shutil.move("user.dat", "ad") except WindowsError: pass try: shutil.move("money.dat", "Market") except WindowsError: pass try: shutil.move("pw.dat", "ad") except WindowsError: pass Dialog.Dialog(root, title = 'done', bitmap = 'info', text = u'設定を適用するには再起動してください', strings = ['OK'], default = 0) else: pwcon.set(u'アカウント情報を正しく入力してください') else: pwcon.set(u'アカウント情報を正しく入力してください') else: pwcon.set(u'アカウント情報を入力してください') elif not os.path.exists("%s\\Users\\user3" % Paths): if actname.get() and actpw.get() and actpwc.get() != "": if actpw.get() == actpwc.get(): try: e1 = enckey.encrypt(actpw.get()) except ValueError: pwcon.set(u'パスワードは8文字で入力してください') else: if actpw.get() and actpwc.get() and actpw.get() == actpwc.get(): idf = ids os.chdir("Users") os.mkdir("user3") os.chdir("user3") os.mkdir("ad") os.mkdir("Market") os.mkdir("Memo") a = open('user.dat', 'w') c = open('money.dat', 'w') i = open('pw.dat', 'w') a.write(actname.get()) e1 = enckey.encrypt(actpw.get()) i.write(e1) c.write(str(0)) a.close() c.close() i.close() try: shutil.move("user.dat", "ad") except WindowsError: pass try: shutil.move("money.dat", "Market") except WindowsError: pass try: shutil.move("pw.dat", "ad") except WindowsError: pass Dialog.Dialog(root, title = 'done', bitmap = 'info', text = u'設定を適用するには再起動してください', strings = ['OK'], default = 0) else: pwcon.set(u'アカウント情報を正しく入力してください') else: pwcon.set(u'アカウント情報を正しく入力してください') else: pwcon.set(u'アカウント情報を入力してください') elif not os.path.exists("%s\\Users\\user4" % Paths): if actname.get() and actpw.get() and actpwc.get() != "": if actpw.get() == actpwc.get(): try: e1 = enckey.encrypt(actpw.get()) except ValueError: pwcon.set(u'パスワードは8文字で入力してください') else: if actpw.get() and actpwc.get() and actpw.get() == actpwc.get(): idf = ids os.chdir("Users") os.mkdir("user4") os.chdir("user4") os.mkdir("ad") os.mkdir("Market") os.mkdir("Memo") a = open('user.dat', 'w') c = open('money.dat', 'w') i = open('pw.dat', 'w') a.write(actname.get()) e1 = enckey.encrypt(actpw.get()) i.write(e1) c.write(str(0)) a.close() c.close() i.close() try: shutil.move("user.dat", "ad") except WindowsError: pass try: shutil.move("money.dat", "Market") except WindowsError: pass try: shutil.move("pw.dat", "ad") except WindowsError: pass Dialog.Dialog(root, title = 'done', bitmap = 'info', text = u'設定を適用するには再起動してください', strings = ['OK'], default = 0) sys.exit() else: pwcon.set(u'アカウント情報を正しく入力してください') else: pwcon.set(u'アカウント情報を正しく入力してください') else: pwcon.set(u'アカウント情報を入力してください') else: pwcon.set(u'作成可能なアカウントが最大です')
def shori(): if selecti.get() == 1: f = open('item1pr.dat', 'r') fr = codecs.open('item1.dat', 'r', 'shift-jis') for item in fr: item == item n = '1' con = R1 Lco = L1 Pco = P1 if selecti.get() == 2: f = open('item2pr.dat', 'r') fr = codecs.open('item2.dat', 'r', 'shift-jis') for item in fr: item == item n = '2' con = R2 Lco = L2 Pco = P2 if selecti.get() == 3: f = open('item3pr.dat', 'r') fr = codecs.open('item3.dat', 'r', 'shift-jis') for item in fr: item == item n = '3' con = R3 Lco = L3 Pco = P3 if selecti.get() == 4: f = open('item4pr.dat', 'r') fr = codecs.open('item4.dat', 'r', 'shift-jis') for item in fr: item == item n = '4' con = R4 Lco = L4 Pco = P4 if selecti.get() == 5: f = open('item5pr.dat', 'r') fr = codecs.open('item5.dat', 'r', 'shift-jis') for item in fr: item == item n = '5' con = R5 Lco = L5 Pco = P5 if selecti.get() == 6: f = open('item6pr.dat', 'r') fr = codecs.open('item6.dat', 'r', 'shift-jis') for item in fr: item == item n = '6' con = R6 Lco = L6 Pco = P6 if selecti.get() == 7: f = open('item7pr.dat', 'r') fr = codecs.open('item7.dat', 'r', 'shift-jis') for item in fr: item == item n = '7' con = R7 Lco = L7 Pco = P7 if selecti.get() == 8: f = open('item8pr.dat', 'r') fr = codecs.open('item8.dat', 'r', 'shift-jis') for item in fr: item == item n = '8' con = R8 Lco = L8 Pco = P8 if selecti.get() == 9: f = open('item9pr.dat', 'r') fr = codecs.open('item9.dat', 'r', 'shift-jis') for item in fr: item == item n = '9' con = R9 Lco = L9 Pco = P9 if selecti.get() == 10: f = open('item10pr.dat', 'r') fr = codecs.open('item10.dat', 'r', 'shift-jis') for item in fr: item == item n = '10' con = R10 Lco = L10 Pco = P10 if item == 'empty': Dialog.Dialog(root, title = 'alert', bitmap = 'info', text = u'商品が入っていません', strings = ['OK'], default = 0) selecti.set('0') else: if chec.get(): ff = open('wallet.dat', 'r') for i in ff: i == i for p1 in f: p1==p1 if int(i)<int(p1): Dialog.Dialog(root, title = 'alert', bitmap = 'info', text = u'お金が不足しています', strings = ['OK'], default = 0) selecti.set('0') else: x = int(i)-int(p1) moneyval.set(str(x)) wallet.append(x) chargem.append(x) codecs.open('item%s.dat' % n, 'w', 'shift-jis').write('empty') open('item%spr.dat' % n, 'w').write('0') open('wallet.dat', 'w').write(str(x)) Dialog.Dialog(root, title = 'alert', bitmap = 'info', text = u'お買い上げありがとうございました', strings = ['OK'], default = 0) selecti.set('0') con.configure(state = 'disabled') Lco.configure(text = 'empty') Pco.configure(text = int(0)) else: for p2 in f: p2==p2 for ii in pri: ii == ii if ii<int(p2): Dialog.Dialog(root, title = 'alert', bitmap = 'info', text = u'お金が不足しています', strings = ['OK'], default = 0) selecti.set('0') else: ii-=int(p2) to1.configure(text = int(ii)) pri.append(ii) codecs.open('item%s.dat' % n, 'w', 'shift-jis').write('empty') open('item%spr.dat' % n, 'w').write('0') Dialog.Dialog(root, title = 'alert', bitmap = 'info', text = u'お買い上げありがとうございました', strings = ['OK'], default = 0) selecti.set('0') con.configure(state = 'disabled') Lco.configure(text = 'empty') Pco.configure(text = int(0))
sock.settimeout(10) sock.connect((SERVER_IP, int(SERVER_PORT))) sock.send(send_data) rsp = sock.recv(1024) except Exception, e: self.isSuccess = False dialog = Dialog.Dialog(None, u"错误", u"服务器断连", 200, 150, 30, 60) dialog.Centre() dialog.Show() finally: sock.close() self.Destroy() if self.isSuccess: if Constant.SVR_RSP_LON_ERR_REP == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"鉴权失败", 200, 150, 30, 60) dialog.Centre() dialog.Show() elif Constant.SVR_RSP_LON_ERR_NOT_EXI == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"用户不存在", 200, 150, 30, 60) dialog.Centre() dialog.Show() elif Constant.SVR_MYSQL_UNREACHABLE == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"后台数据库不可达", 200, 150, 20, 60) dialog.Centre() dialog.Show() elif Constant.SVR_RSP_USR_LOG_IN_REP == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"该用户已经登录", 200, 150, 20, 60)
def main(): #set up path to face detection parameters path4opencv = './haarcascades' face_cascade_path = path4opencv + '/haarcascade_frontalface_alt.xml' eye_cascade_path = path4opencv + '/haarcascade_eye.xml' #set up object for pre-trained classifier object # the recognition works to find most relevant image features first # as it scans the image, # then 'cascades' to a larger and/or specific set of features face_cascade = cv2.CascadeClassifier(face_cascade_path) eye_cascade = cv2.CascadeClassifier(eye_cascade_path) print 'starting...' with open('ImageList.txt', 'r') as infile: for filename in infile: filename = filename.rstrip() filename = filename.rstrip('\n') print 'reading ' + filename img = cv2.imread('./' + filename, cv2.IMREAD_GRAYSCALE) gray = cv2.equalizeHist(img) #gray =cv2.cvtColor(imgeq, cv2.COLOR_BGR2GRAY) #use grayscale if its color #call detect function faces = face_cascade.detectMultiScale( gray, scaleFactor=1.2, minNeighbors=3, minSize=(75, 75), flags=cv2.CASCADE_SCALE_IMAGE) numfaces = len(faces) #check for eyes and show the face to user for face in faces: print 'a face found ...' [x, y, w, h] = face print 'size width:' + str(w) + " height:" + str(h) cv2.rectangle(gray, (x, y), (x + w, y + h), (0, 255, 0), 4) roi_gray = gray[y:y + h, x:x + w] eyes = eye_cascade.detectMultiScale(roi_gray) if len(eyes) == 2: print '2 eyes found ...' for (ex, ey, ew, eh) in eyes: cv2.rectangle(gray, (x + ex, y + ey), (x + ex + ew, y + ey + eh), (255, 0, 0), 4) cv2.namedWindow('FSA_depression_era_Photo') cv2.imshow('FSA_depression_era_Photo', gray) cv2.waitKey(200) dial_res = Dialog.Dialog(title='Found' + str(numfaces) + ' faces', text='do you want to:', bitmap='questhead', default=0, strings=('try next image', 'Quit')) if dial_res.num == 1: print '.. stopping' exit() else: cv2.destroyWindow('FSA_epression_era_Photo') cv2.waitKey(1) print 'about to start again in 1 sec...' cv2.destroyAllWindows()
def __setFont(self): """Set self.__text's font to the currently selected font [ if self.__sizeVar is a valid integer in string form -> self.__text := self.__text with its font set to selected-font(self) return 1 else -> X := X with a popup error dialog return 0 """ #-- 1 -- family = self.__families[self.__familyx] #-- 2 -- # [ if self.__sizeVar contains a valid integer as a string -> # size := that value as an integer # else -> # X := X with a popup error dialog # return ] try: size = int(self.__sizeVar.get()) except: d = Dialog( self, title="Message", bitmap="info", text="Size must be an integer", default=0, # First button is the default strings=("OK", )) # Only one button: OK return 0 #-- 3 -- if self.__wtVar.get(): wt = "bold" else: wt = "normal" #-- 4 -- if self.__slantVar.get(): slant = "italic" else: slant = "roman" #-- 5 -- # [ font := the font specified by family, size, wt, and slant # self.__text := self.__text switched to that font ] font = Font(family=family, size=size, weight=wt, slant=slant) self.__text["font"] = font #-- 6 -- # [ self.__actualLabel := self.__actualLabel displaying the actual # family, size, weight, and slant of font ] attrs = [font.actual("family"), font.actual("size")] weight = font.actual("weight") slant = font.actual("slant") if weight != "normal": attrs.append(weight) if slant != "roman": attrs.append(slant) self.__actualLabel["text"] = string.join(attrs, " ") #-- 7 -- return 1
def doChosenLayout(atom3i, selectionList, optionsDict=None): """ Shows a menu of all the layout algorithms """ selectionList = hierarchicalFilter(selectionList) # stringList = ['Hierarchical', 'Circle', 'Tree-like', 'FTA', 'Spring', # 'Orthogonal', 'Cancel'] stringList = [ 'Hierarchical', 'Circle', 'Tree-like', 'FTA', 'Spring', 'Dump options to console', 'Circle C++', 'Spring C++', 'FTA C++', 'Tree C++', 'Cancel' ] d = Dialog.Dialog( atom3i.parent, { 'title': 'Automatic Layout', 'text': 'Choose layout algorithm', 'bitmap': '', 'default': 0, 'strings': stringList }) if (d.num == 0): doHierarchicalLayout(atom3i, selectionList, optionsDict) elif (d.num == 1): doCircleLayout(atom3i, selectionList, optionsDict) elif (d.num == 2): doTreeLikeLayout(atom3i, selectionList, optionsDict) elif (d.num == 3): doForceTransfer(atom3i, selectionList, optionsDict) elif (d.num == 4): doSpringLayout(atom3i, selectionList, optionsDict) elif (d.num == 5): print '\n\n' from HierarchicalLayoutModule import AToM3HierarchicalOptions AToM3HierarchicalOptions.dumpOptions2Console(atom3i) print '\n' from CircleLayoutModule import AToM3CircleOptions AToM3CircleOptions.dumpOptions2Console(atom3i) print '\n' from SpringLayoutModule import AToM3SpringOptions AToM3SpringOptions.dumpOptions2Console(atom3i) print '\n' from TreeLikeLayoutModule import AToM3TreeLikeOptions AToM3TreeLikeOptions.dumpOptions2Console(atom3i) print '\n' from ForceTransferModule import AToM3FTAOptions AToM3FTAOptions.dumpOptions2Console(atom3i) elif (d.num == 6): from LayoutViaServer.LayoutViaServer import LayoutType, layoutViaServer layoutType = LayoutType([LayoutType.CIRCLE], True, 10) layoutViaServer(atom3i, selectionList, layoutType) elif (d.num == 7): from LayoutViaServer.LayoutViaServer import LayoutType, layoutViaServer layoutType = LayoutType([LayoutType.SPRING], True, 10) layoutViaServer(atom3i, selectionList, layoutType) elif (d.num == 8): from LayoutViaServer.LayoutViaServer import LayoutType, layoutViaServer layoutType = LayoutType([LayoutType.FTA], True, 10) layoutViaServer(atom3i, selectionList, layoutType) elif (d.num == 9): from LayoutViaServer.LayoutViaServer import LayoutType, layoutViaServer layoutType = LayoutType([LayoutType.TREE], True, 10) layoutViaServer(atom3i, selectionList, layoutType)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(10) sock.connect((Login.SERVER_IP, int(Login.SERVER_PORT))) sock.send(send_data) rsp = sock.recv(1024) except Exception, e: self.isSuccess = False dialog = Dialog.Dialog(None, u"错误", e.message, 200, 150, 30, 60) dialog.Centre() dialog.Show() finally: sock.close() if self.isSuccess: if Constant.GRO_MEM_LST_REQ_ERR_RSP == rsp[0]: dialog = Dialog.Dialog(None, u"错误", u"查询群组成员失败", 200, 150, 30, 60) dialog.Centre() dialog.Show() elif Constant.GRO_MEM_LST_REQ_SUC_RSP == rsp[0]: # 获取群组成员的数目 index = 1 length = ord(rsp[index]) index += 1 GROUP_MEM_NUM = int(rsp[index:(index + length)]) index += length # 逐个解析出群组成员名字 for i in range(0, GROUP_MEM_NUM, 1): length = ord(rsp[index]) index += 1 GROUP_MEM_NAME_ARRAY[i] = rsp[index:(index + length)] index += length
def OnLogin(self, event): # 将服务器信息和用户信息存入全局变量 global SERVER_IP global SERVER_PORT global LOCAL_PORT global USERID global USERNAME global FRIEND_NUM global FRIEND_ID_ARRAY global FRIEND_NAME_ARRAY global FRIEND_STATUS_ARRAY global GROUP_NUM global GROUP_ID_ARRAY global GROUP_NAME_ARRAY global GROUP_MEMBERNUM_ARRAY global isParamOK SERVER_IP = self.server_ip_edit.GetValue() SERVER_PORT = self.server_port_edit.GetValue() LOCAL_PORT = self.local_port_edit.GetValue() USERID = self.userid_edit.GetValue() password = self.password_edit.GetValue() sock = None rsp = None # 对登录界面产生的参数进行非空判断 if "" == SERVER_IP or "" == SERVER_PORT or "" == USERID or "" == password: dialog = Dialog.Dialog(None, u"错误", u"参数不能为空", 200, 150, 60, 60) dialog.Centre() dialog.Show() # 对输入的服务器IP地址进行合法性校验 elif not Tools.ipChecker(SERVER_IP): dialog = Dialog.Dialog(None, u"错误", u"IP地址不合法", 200, 150, 60, 60) dialog.Centre() dialog.Show() # 校验输入的服务器端口是否为整数 elif not Tools.portChecker(SERVER_PORT): dialog = Dialog.Dialog(None, u"错误", u"端口不合法", 200, 150, 60, 60) dialog.Centre() dialog.Show() # 校验输入的用户ID是否为整数 elif not Tools.idChecker(USERID): dialog = Dialog.Dialog(None, u"错误", u"用户ID不合法", 200, 150, 60, 60) dialog.Centre() dialog.Show() # 校验本地端口是否可用,若不可用,则更换一个 elif not Tools.port_is_free(Tools.get_local_ip(), LOCAL_PORT): dialog = Dialog.Dialog(None, u"错误", u"本地端口被占用", 200, 150, 60, 60) dialog.Centre() dialog.Show() else: isParamOK = True send_data = Constant.LON_IN_REQ_SUC_RSP + \ chr(len(str(USERID))) + \ chr(len(password.encode('utf-8'))) + \ chr(len(P2P_Group_Chat.LOCAL_IP.encode('utf-8'))) + \ chr(len(LOCAL_PORT.encode('utf-8'))) + \ str(USERID) + \ password.encode('utf-8') + \ P2P_Group_Chat.LOCAL_IP.encode('utf-8') + \ str(LOCAL_PORT) try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(10) sock.connect((SERVER_IP, int(SERVER_PORT))) sock.send(send_data) rsp = sock.recv(1024) except Exception, e: self.isSuccess = False dialog = Dialog.Dialog(None, u"错误", u"服务器断连", 200, 150, 30, 60) dialog.Centre() dialog.Show() finally:
def main(): #set up path to face detection parameters path4opencv = './haarcascades' face_cascade_path = path4opencv + '/haarcascade_frontalface_alt.xml' eye_cascade_path = path4opencv + '/haarcascade_eye.xml' #set up object for pre-trained classifier object # the recognition works to find most relevant image features first # as it scans the image, # then 'cascades' to a larger and/or specific set of features face_cascade = cv2.CascadeClassifier(face_cascade_path) eye_cascade = cv2.CascadeClassifier(eye_cascade_path) print 'starting...' #Make a loop to grab image from cam and see if a face is there keepgoing = True while (keepgoing): print 'capturing ...' #set up video object cap = cv2.VideoCapture(0) ret, frame = cap.read() #grab the cam image, take 2nd one in buffer ret, frame = cap.read() cap.release() while ret == True: #one way to clear buffer (depends on camera) ret, dummyframe = cap.read() gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) #use grayscale #call detect function faces = face_cascade.detectMultiScale(gray, scaleFactor=1.2, minNeighbors=3, minSize=(75, 75), flags=cv2.CASCADE_SCALE_IMAGE) #check for eyes and show the face to user if len(faces) > 0: print 'face found ...' [x, y, w, h] = faces[0] print 'size width:' + str(w) + " height:" + str(h) cv2.rectangle(gray, (x, y), (x + w, y + h), (0, 255, 0), 4) roi_gray = gray[y:y + h, x:x + w] eyes = eye_cascade.detectMultiScale(roi_gray) if len(eyes) == 2: print 'eyes found ...' for (ex, ey, ew, eh) in eyes: cv2.rectangle(gray, (x + ex, y + ey), (x + ex + ew, y + ey + eh), (255, 0, 0), 4) cv2.namedWindow('you?') # cv2.startWindowThread() cv2.imshow('you?', gray) cv2.waitKey(200) dial_res = Dialog.Dialog(title='Face Detected', text='do you want to:', bitmap='questhead', default=0, strings=('Try another face shot', 'Quit')) if dial_res.num == 1: keepgoing = False print '.. stopping' else: cv2.destroyWindow('you?') cv2.waitKey(1) print 'about to start again in 3 secs...' time.sleep(3) else: print 'no eyes.. wait a sec' time.sleep(1) else: print 'no face found - wait a sec...' #cv2.imshow('...',gray) #cv2.waitKey(200) time.sleep(1) cv2.destroyAllWindows() cap.release()
def _missing(self): Dialog.Dialog(self, title='Undefined operation', text='This operation is not yet implemented.', bitmap='warning', default=0, strings = ('Cancel',))