大佬们点评一下我没事编的代码
  • 板块灌水区
  • 楼主luogu_tanbozhi
  • 当前回复9
  • 已保存回复9
  • 发布时间2024/7/17 21:31
  • 上次更新2024/7/18 06:32:02
查看原帖
大佬们点评一下我没事编的代码
1321076
luogu_tanbozhi楼主2024/7/17 21:31
from tkinter import *
from tkinter.messagebox import *
from random import *
#更新时间: 2024.7.17 20:36 作者:luogu_tanbozhi(BSD-051)
#发展史
#生成器 版本:alpha 0.1 初代 有基础功能
#生成器 版本:beta 2.0 添加下限 添加阎王纸
#生成器 版本:beta 2.5 修复了阎王纸无法关闭的bug 阎王纸改用toplevel 错误逻辑大改
#生成器 版本:2.5暗改版 理论版本beta3.0
#生成器 版本:beta 3 添加了变态按钮
class app:
    def __init__(self, master):
        self.master = master
        self.sv1 = StringVar()
        self.random_number = None
        self.ycz_windows = []

        self.l1 = Label(self.master, text='请输入下限')
        self.l2 = Label(self.master, text='请输入上限')
        self.l3 = Label(self.master, textvariable=self.sv1)
        self.l4 = Label(self.master, text='演草纸->')
        self.l5 = Label(self.master, text='生成器\nBeta 2.5')

        self.e1 = Entry(self.master, width=10)
        self.e2 = Entry(self.master, width=10)

        self.b = Button(self.master, text='生成数字', command=self.GRN)
        self.b2 = Button(self.master, text='退出程序', command=quit)
        self.b3 = Button(self.master, text=' 纸 ', command=self.YCZ)
        self.b4 = Button(self.master, text='删便签内容', command=self.delete_YCZ)
        self.b5 = Button(self.master, text='关闭便签', command=self.close_all_YCZ)
        self.b6 = Button(self.master, text='勿触', command=self.DND)

        self.l1.grid(row=1, column=1)
        self.l2.grid(row=2, column=1)
        self.l4.grid(row=3, column=1)
        self.l5.grid(row=1, column=5)

        self.e1.grid(row=1, column=2)
        self.e2.grid(row=2, column=2)

        self.b.grid(row=1, column=3)
        self.l3.grid(row=2, column=3)

        self.b2.grid(row=1, column=4)
        self.b3.grid(row=3, column=2)
        self.b4.grid(row=3, column=3)
        self.b5.grid(row=3, column=4)
        self.b6.grid(row=3, column=5)

    def MSG(self):
        showinfo(title=None, message=self.random_number)

    def YCZ(self):
        window = Toplevel(self.master)
        window.title('演草纸')
        window.geometry('350x275')
        text_area = Text(window, height=500)
        text_area.pack()
        self.ycz_windows.append((window, text_area))  

    def delete_YCZ(self):
        for window, text_area in self.ycz_windows:
            text_area.delete(1.0, END)

    def close_all_YCZ(self):
        while self.ycz_windows:
            window, text_area = self.ycz_windows.pop()
            window.destroy()

    def GRN(self):
        try:
            lower_limit = int(self.e1.get())
            upper_limit = int(self.e2.get())
            if upper_limit <= 0:
                raise ValueError("上限需为正整数")
            elif lower_limit <= 0:
                raise ValueError("下限需为正整数")
            self.random_number = randint(lower_limit, upper_limit)
            self.sv1.set(str(self.random_number))
            self.MSG()
        except ValueError as e:
            showerror("输入错误", "请输入有效的整数下限和上限")
    def DND(self):
        d_n_d = Toplevel(self.master)
        d_n_d.geometry('75x75')
        d_n_d.title('关不掉了吧')
        d_n_d.protocol("WM_DELETE_WINDOW", self.master)
        dndB1 = Button(d_n_d, text='点我', command=None)
        dndB2 = Button(d_n_d, text='点我', command=d_n_d.destroy)
        dndB3 = Button(d_n_d, text='别点', command=self.DND)
        dndB4 = Button(d_n_d, text='点我', command=self.DND)
        dndB5 = Button(d_n_d, text='别点', command=self.DND)
        dndB6 = Button(d_n_d, text='点我', command=self.DND)
        
        dndB1.grid(row=1, column=1)
        dndB2.grid(row=2, column=1)
        dndB3.grid(row=1, column=2)
        dndB4.grid(row=2, column=2)
        dndB5.grid(row=1, column=3)
        dndB6.grid(row=2, column=3)
        
def loop():
    if __name__ == '__main__':
        root = Tk()
        root.geometry('450x130')
        root.title("生成器vBeta 2.5")
        app(root)
        root.mainloop()

#见证奇迹的时刻
loop()
#完美

2024/7/17 21:31
加载中...