猜不对我的生日,就等着受罚吧
以下是代码,只需要安装tkinter这个库即可
import sys
import tkinter
from datetime import time
from random import random
from tkinter import *
from tkinter import messagebox
from turtle import Turtle, Screen, delay, pendown, pencolor, write
from PIL import Image, ImageTk
def clearBox(): #建一个删除函数,t是文本框的名字,每个人的命名不一样
var_usr_name.set('')
var_usr_pwd.set('')
#注册逻辑
def add_info():
name = var_usr_name.get()
password = var_usr_pwd.get()
#判断
f = open("用户.txt", mode='r', encoding='utf-8')#打开用户的文本文件
file_data = f.read()
# 对字符串进行分隔
split_info = file_data.split('\n')
print(split_info)
daan=0#作为一个判定条件
for mm in range(0,len(split_info)):
str=split_info[mm]
before = str.split(" ")[0]
if(before==name):
print("该用户已经注册")
login_success = "该用户已经注册"
messagebox.showinfo(root, message=login_success)
daan=1
break
if(daan==0):
f = open("用户.txt", mode='a+', encoding='utf-8')
f.write(name)#按照格式写入文本,注册成功
f.write(' ')
f.write(password+'\n')
print("注册成功")
login_success = "注册成功"
messagebox.showinfo(root, message=login_success)
# 登录按钮逻辑
def usr_log_in2():
login_success = "你居然不知道我的生日:"
messagebox.showinfo(root, message=login_success)
login_success = "接受惩罚吧:"
messagebox.showinfo(root, message=login_success)
root.destroy()
root_window = tkinter.Tk()
root_window.title('我的生日是1999.10.5')
# root_window.geometry("6600x4400")
root_window.state("zoomed")
def quit():
root_window.destroy()
bt_login = Button(root_window, text=' ', command=quit,bd=0)
bt_login.place(x=0, y=0)
ys="white"
for i in range(0,100):
Label(root_window, text='我的生日是1999.10.5',
font=('华文行楷', 35, 'italic'), background=ys,
foreground='black').pack()
# 增加背景图片
def doSomething():
login_success = "我的生日是1999.10.5"
messagebox.showinfo(root_window, message=login_success)
# root.destroy()
for i in range(0,1):
login_success = "我的生日是1999.10.5:"
messagebox.showinfo(root_window, message=login_success)
login_success = "我的生日是1999.10.5"
messagebox.showwarning(root_window, message=login_success)
login_success = "我的生日是1999.10.5"
messagebox.showerror(root_window, message=login_success)
root_window.protocol('WM_DELETE_WINDOW', doSomething) # root is your root window
root_window.resizable(False, False) # 横纵均不允许调整
root_window.attributes("-toolwindow", 2)
root_window.overrideredirect(True)
root_window.attributes('-topmost', 'true')
# 登录按钮逻辑
def usr_log_in():
def zong():
import turtle
# set a window
wn = turtle.Screen()
wn.bgcolor("black")
wn.screensize(800, 600)
# set a pen
pen = turtle.Turtle()
pen.color("pink")
pen.shape("turtle")
# 画笔形状设成了非常可爱的海龟hh
pen.fillcolor("pink")
turtle.speed(10)
# define functions
def curve():
for i in range(180):
pen.right(1)
pen.forward(2)
def heart():
pen.left(135)
pen.forward(720 / 3.14)
curve()
pen.left(90)
curve()
pen.forward(720 / 3.14)
def text():
pen.penup()
pen.setpos(-50, 50)
pen.pendown()
pen.color("white")
pen.write(input("enter the words:"), font=("Verdana", 30, "bold"))
# painting!
pen.begin_fill()
pen.penup()
pen.setpos(0, -150)
pen.pendown()
heart()
pen.end_fill()
text()
turtle.done()
def dos():
login_success = "我的生日是1999.10.5:"
messagebox.showerror(pen, message=login_success)
pen.protocol('WM_DELETE_WINDOW', dos) # root is your root window
usr_name = var_usr_name.get()
if(usr_name=="1999年10月5日"):
zong()
else:
usr_log_in2()
root = Tk()
root.title("生日惊喜")#进入登录界面
root.geometry("600x400")#设置大小
# 画布放置图片
Label(root, text='你知道我的生日吗(xx年xx月xx日):',font=40,background="white").place(x=70, y=90)
# 用户名输入框
var_usr_name = StringVar()
entry_usr_name = Entry(root, textvariable=var_usr_name,font=("Arial",10))
entry_usr_name.place(x=70, y=120)
#登录按钮
bt_login = Button(root, text='不知道', command=usr_log_in2,font=30,background="red")
bt_login.place(x=80, y=230)
bt_login = Button(root, text='知道', command=usr_log_in,font=30,background="green")
bt_login.place(x=200, y=230)
root.mainloop()#运行界面
解决办法就是点击界面的最左上角,即可退出