我现在读11年级,学习计算机科学,我正在用tkinter制作一个关键术语表。我想知道我是否可以使用用户输入打开一个窗口。如
topic = input("Choose a topic, 1. Theory or 2. Algorithms: ")
if topic == '1':
then here i would call the theory tkinter window using a subroutine
我试过这个,但它似乎不适合我。
下面是整个代码的链接
https://i.stack.imgur.com/WDfZP.png
这是目前UI的样子
https://i.stack.imgur.com/0zI37.png
为避免过于复杂,只需编写以下代码:
from tkinter import *
topic = input("Choose a topic, 1. Theory or 2. Algorithms: ")
def topic_1():
root = Tk()
# Your Code here
root.mainloop()
def topic_2():
root = Tk()
# Your Code here
root.mainloop()
if topic == '2':
topic_2()
elif topic == '1':
topic_1()
所以在这段代码中,首先应该从用户那里获取输入。根据输入,if/else语句将调用两个函数中的一个,这两个函数有各自的窗口。
这是我能为你做的最好的,因为我不想重新输入所有的代码。我建议更换窗户。带有while循环和window.update
的主循环from tkinter import *
window = Tk()
window.title("Something")
window.geometry("1000x1000")
text_box = Text()
text_box.pack()
new_window = False
def new_window_fun():
window2 = Tk()
window2.title("Something new :)")
window2.geometry("1000x1000")
label = Label(text="Hello")
label.pack()
while True:
window2.update()
try:
while 'normal' == window.state():
if text_box.get("1.0", END).strip() == "new window" and new_window is False:
new_window = True
window.destroy() # close the current window
new_window_fun()
print("finished")
else:
window.update()
except:
print("the end")