Tentukan antara muka utama. Gunakan mod "w+" untuk mencipta fail test.txt (saya menambah imej latar belakang, anda boleh meninggalkannya jika tidak diperlukan)
#打开时预加载储存在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()
Tentukan antara muka untuk menambah nama , dan simpannya setiap kali anda menambah nama Pergi ke fail test.txt untuk menentukan sama ada input kosong (tambah kotak gesaan) dan tentukan sama ada senarai kosong.
#定义添加姓名界面 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)
Ini agak mudah, gunakan Teks untuk memaparkan maklumat dalam kamus
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)
Sama seperti di atas, gunakan Teks untuk dipaparkan
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')
Nilai status "mula" dan "berhenti". Tentukan benang. Dayakan urutan
#判断状态 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)
Jika anda tidak perlu menambah imej latar belakang pada antara muka utama, anda boleh memadamkan baris 90 hingga 94 kod. Jika anda perlu menambah imej latar belakang, sila ambil perhatian sama ada alamat laluan adalah betul
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()
Atas ialah kandungan terperinci Bagaimana untuk menulis pemanggil gulung berdasarkan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!