Definieren Sie die Hauptschnittstelle. Verwenden Sie den Modus „w+“, um die test.txt-Datei zu erstellen (ich habe ein Hintergrundbild hinzugefügt, Sie können es weglassen, wenn es nicht benötigt wird)
#打开时预加载储存在test.txt文件中的花名册 namelist = [] with open("test.txt", "r") as f: for line in f.readlines(): line = line.strip('\n') namelist.append(line) win = Tk() win.title('小白点名器') win.geometry('500x300') #定义画布,添加背景图片 canvas = Canvas(win,width=500,height=300) img_obj = PhotoImage(file=r"C:\Users\ge\Downloads\IMG_202206307919_png.png") #需输入照片路径 image = canvas.create_image(250,0,anchor = "n" , image = img_obj) canvas.pack() a = StringVar() b = StringVar() b.set('开始') #定义可变文本信息 Label1 = Label(win, textvariable=a, font=('黑体', 100)).place(y= 60 , x=65) #定义四个按钮 Button1 = Button(win, textvariable=b, font=('等线', 30), command = zhuanzhuan).place(y=210,x = 190) Button2 = Button(win, text = '添加姓名', font=('等线', 20), command = addname).place(x= 50,y =0) Button3 = Button(win, text = '查看', font=('等线', 20), command = chakan).place(x= 230,y =0) Button4 = Button(win, text = '指南', font=('等线', 20), command = zhinan).place(x= 360,y =0) win.mainloop()
Definieren Sie den hinzugefügten Namen Schnittstelle, jedes Mal, wenn Sie den Namen in der Datei test.txt speichern, wird beurteilt, ob die Eingabe leer ist (ein Eingabeaufforderungsfeld hinzufügen) und ob die Liste leer ist.
#定义添加姓名界面 def addname(): global Entry1 window = Tk() window.title('姓名添加器') window.geometry('400x200+500+200') Label11 = Label(window, text = '请在下方输入你要添加的姓名', font=('黑体', 18), anchor='center').place(y=30, x=25) Entry1 = Entry(window, font=('等线', 30), width=70) Entry1.place(y=80, x=70, width=200, height=80) Button3 = Button(window, text = '确认', font=('等线', 18), command = addname1).place(x= 300,y =80, height=80) #每添加一次姓名就保存到test.txt文件中 def addname1(): global namelist #声明为全局变量实时更新 if len(Entry1.get()) == 0: tkinter.messagebox.showinfo('提示', '姓名输入不能为空哦') else: if len(Entry1.get()) == 2: zhongjian = list(Entry1.get())[::1] zhongjian1 = zhongjian[0] + ' ' +zhongjian[1] if len(namelist) == 0: nam = zhongjian1 else: nam = '\n' + zhongjian1 else: if len(namelist) == 0: nam = str(Entry1.get()) else: nam = '\n' + str(Entry1.get()) with open("test.txt", "a") as f: f.write(nam) tip = '姓名:' + Entry1.get() + ' 添加成功' tkinter.messagebox.showinfo('提示', tip) print(nam) namelist = [] with open("test.txt", "r") as f: for line in f.readlines(): line = line.strip('\n') namelist.append(line)
Das ist relativ einfach, verwenden Sie einfach Text, um die Informationen im Wörterbuch anzuzeigen
def chakan(): window = Tk() window.title('花名册查看') window.geometry('350x200+500+200') console = Text(window, font=('等线', 11)) console.place(y=20, x=35, width=280, height=170) console.insert(1.0,namelist)
def zhinan(): window = Tk() window.title('小白点名器使用指南') window.geometry('350x230+500+200') console = Text(window, font=('等线', 11)) console.place(y=20, x=35, width=280, height=190) console.insert(1.0, ' 欢迎使用小白点名器1.0\n你可以在”添加姓名按钮上输入你要添加的名字\n你可以在”查看“按钮中查看花名册中所有的名字' '\n你可以在此程序同级的名为”花名册.txt“的文件夹中直接批量添加、删减姓名(使用回车做分隔)\n--------------------------------\n' '(指南之外)此程序在CSDN中已开源,欢迎访问我的博客:晋升阁\n需要合作的可加我微信:baijinge1137')
#判断状态 def zhuanzhuan(): if b.get() == '开始': b.set('停止') elif b.get() =="停止": b.set('开始') _thread.start_new_thread(xiancheng,()) #启用一个线程来转动姓名 #定义一个线程 def xiancheng(): global xuanzhong while b.get()=='停止': try: xuanzhong = random.choice(namelist) a.set(xuanzhong) Label1.updata()#刷新数据 time.sleep(0.3)#0.3秒刷新一次 except: continue time.sleep(0.3) a.set(xuanzhong)
import random import time from tkinter import * import _thread import tkinter.messagebox def zhuanzhuan(): if b.get() == '开始': b.set('停止') elif b.get() =="停止": b.set('开始') _thread.start_new_thread(xiancheng,()) #启用一个线程来转动姓名 def xiancheng(): global xuanzhong while b.get()=='停止': try: xuanzhong = random.choice(namelist) a.set(xuanzhong) Label1.updata() time.sleep(0.3) except: continue time.sleep(0.3) a.set(xuanzhong) def addname1(): global namelist #声明为全局变量实时更新 if len(Entry1.get()) == 0: tkinter.messagebox.showinfo('提示', '姓名输入不能为空哦') else: if len(Entry1.get()) == 2: zhongjian = list(Entry1.get())[::1] zhongjian1 = zhongjian[0] + ' ' +zhongjian[1] if len(namelist) == 0: nam = zhongjian1 else: nam = '\n' + zhongjian1 else: if len(namelist) == 0: nam = str(Entry1.get()) else: nam = '\n' + str(Entry1.get()) with open("test.txt", "a") as f: f.write(nam) tip = '姓名:' + Entry1.get() + ' 添加成功' tkinter.messagebox.showinfo('提示', tip) print(nam) namelist = [] with open("test.txt", "r") as f: for line in f.readlines(): line = line.strip('\n') namelist.append(line) def chakan(): window = Tk() window.title('花名册查看') window.geometry('350x200+500+200') console = Text(window, font=('等线', 11)) console.place(y=20, x=35, width=280, height=170) console.insert(1.0,namelist) def zhinan(): window = Tk() window.title('小白点名器使用指南') window.geometry('350x230+500+200') console = Text(window, font=('等线', 11)) console.place(y=20, x=35, width=280, height=190) console.insert(1.0, ' 欢迎使用小白点名器1.0\n你可以在”添加姓名按钮上输入你要添加的名字\n你可以在”查看“按钮中查看花名册中所有的名字' '\n你可以在此程序同级的名为”花名册.txt“的文件夹中直接批量添加、删减姓名(使用回车做分隔)\n--------------------------------\n' '(指南之外)此程序在CSDN中已开源,欢迎访问我的博客:晋升阁\n需要合作的可加我微信:baijinge1137') def addname(): global Entry1 window = Tk() window.title('姓名添加器') window.geometry('400x200+500+200') Label11 = Label(window, text = '请在下方输入你要添加的姓名', font=('黑体', 18), anchor='center').place(y=30, x=25) Entry1 = Entry(window, font=('等线', 30), width=70) Entry1.place(y=80, x=70, width=200, height=80) Button3 = Button(window, text = '确认', font=('等线', 18), command = addname1).place(x= 300,y =80, height=80) namelist = [] with open("test.txt", "r") as f: for line in f.readlines(): line = line.strip('\n') namelist.append(line) win = Tk() win.title('小白点名器') win.geometry('500x300') canvas = Canvas(win,width=500,height=300) img_obj = PhotoImage(file=r"C:\Users\ge\Downloads\IMG_202206307919_png.png") #背景图片路径,若不需要添加将85—88行删掉即可 image = canvas.create_image(250,0,anchor = "n" , image = img_obj) canvas.pack() a = StringVar() b = StringVar() b.set('开始') Label1 = Label(win, textvariable=a, font=('黑体', 100)).place(y= 60 , x=65) Button1 = Button(win, textvariable=b, font=('等线', 30), command = zhuanzhuan).place(y=210,x = 190) Button2 = Button(win, text = '添加姓名', font=('等线', 20), command = addname).place(x= 50,y =0) Button3 = Button(win, text = '查看', font=('等线', 20), command = chakan).place(x= 230,y =0) Button4 = Button(win, text = '指南', font=('等线', 20), command = zhinan).place(x= 360,y =0) win.mainloop()
Das obige ist der detaillierte Inhalt vonWie schreibe ich einen Appell auf Basis von Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!