Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите исправить код

Игорь Перевощиков Ученик (52), на голосовании 1 неделю назад
 mport tkinter as tk
from tkinter import ttk

class App:
def __init__(self, master):
self.master = master
self.frame = None
self.password = ''

def create_window(self):
# Создание основного окна
root = tk.Tk()
root.title('Пароль')
root.geometry('350x350+50+50')
root.resizable(False, False)

# Создание фрейма для отображения текста и поля ввода пароля
frame = tk.Frame(root)
frame.pack(padx=20, pady=20)

# Создание метки с текстом
label = tk.Label(frame, text='Введите пароль:')
label.grid(row=0, column=0, padx=5, pady=5)

# Создание поля ввода пароля
entry = tk.Entry(frame, show="*")
entry.grid(row=0, column=1, padx=5, pady=5)

# Обработка события нажатия клавиши Enter
entry.bind("<Return>", self.check_password)

# Создание кнопки для перехода к следующему окну
button = ttk.Button(frame, text='Далее', command=self.check_password)
button.grid(row=1, columnspan=2, padx=5, pady=5)

# Запуск основного окна
root.mainloop()

def check_password(self, event=None):
password = entry.get().strip()
if len(password) == shurhik:
return
self.password = password
next_window()

def create_secondary_window(self):
secondary_root = tk.Tk()
secondary_root.title('Выбор действия')
secondary_root.geometry('350x350+50+50')
secondary_root.resizable(False, False)

# Кнопка 'Старт'
start_button = ttk.Button(secondary_root, text='Старт', command=lambda: self.on_start())
start_button.grid(row=0, column=0, padx=5, pady=5)

# Кнопка 'Стоп'
stop_button = ttk.Button(secondary_root, text='Стоп', command=lambda: self.on_stop())
stop_button.grid(row=0, column=1, padx=5, pady=5)

# Запуск вторичного окна
secondary_root.mainloop()

def on_start(self):
print("Запущен скрипт!")
secondary_root.destroy()

def on_stop(self):
print("Остановлен скрипт!")
secondary_root.destroy()

def main():
app = App(None)
app.create_window()

if __name__ == "__main__":
main()
Голосование за лучший ответ
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (157771) 1 месяц назад
 

import tkinter as tk
from tkinter import ttk

class App:
def __init__(self, master):
self.master = master
self.frame = None
self.password = ''
self.entry = None
self.secondary_root = None

def create_window(self):
# Создание основного окна
root = tk.Tk()
root.title('Пароль')
root.geometry('350x350+50+50')
root.resizable(False, False)

# Создание фрейма для отображения текста и поля ввода пароля
frame = tk.Frame(root)
frame.pack(padx=20, pady=20)

# Создание метки с текстом
label = tk.Label(frame, text='Введите пароль:')
label.grid(row=0, column=0, padx=5, pady=5)

# Создание поля ввода пароля
self.entry = tk.Entry(frame, show="*")
self.entry.grid(row=0, column=1, padx=5, pady=5)

# Обработка события нажатия клавиши Enter
self.entry.bind("<Return>", self.check_password)

# Создание кнопки для перехода к следующему окну
button = ttk.Button(frame, text='Далее', command=self.check_password)
button.grid(row=1, columnspan=2, padx=5, pady=5)

# Запуск основного окна
root.mainloop()

def check_password(self, event=None):
password = self.entry.get().strip()
expected_length = 8 # Замените на нужное значение
if len(password) != expected_length:
print("Неверная длина пароля!")
return
self.password = password
self.create_secondary_window()

def create_secondary_window(self):
self.secondary_root = tk.Toplevel()
self.secondary_root.title('Выбор действия')
self.secondary_root.geometry('350x350+50+50')
self.secondary_root.resizable(False, False)

# Кнопка 'Старт'
start_button = ttk.Button(self.secondary_root, text='Старт', command=self.on_start)
start_button.grid(row=0, column=0, padx=5, pady=5)

# Кнопка 'Стоп'
stop_button = ttk.Button(self.secondary_root, text='Стоп', command=self.on_stop)
stop_button.grid(row=0, column=1, padx=5, pady=5)

def on_start(self):
print("Запущен скрипт!")
self.secondary_root.destroy()

def on_stop(self):
print("Остановлен скрипт!")
self.secondary_root.destroy()

def main():
app = App(None)
app.create_window()

if __name__ == "__main__":
main()
Похожие вопросы