【问题标题】:How do I keep the current tkinter window and update it using a push button?如何保留当前的 ​​tkinter 窗口并使用按钮更新它?
【发布时间】:2019-01-29 03:08:42
【问题描述】:

我正在创建一个 UI,单击小部件按钮后,下一个 Tkinter 应该是永久的。在这个永久的 Tkinter 窗口中,我需要单击一个硬件按钮以用于其他目的,例如捕获图像。这是我的 UI UI 的图像,然后在单击“单击此处按钮后,另一个 UI 将像这样显示 Next UI。我如何保留下一个 UI 并使用硬件按钮来更新文本标签?这是到目前为止我为此 UI 编写的代码。

if __name__ == '__main__':
root = tk.Tk()
root.geometry("480x320")

root['bg']='white'
PlayerTwo=PhotoImage(file="2.png")
PlayerThree=PhotoImage(file="3.png")
PlayerFour=PhotoImage(file="4.png")

players_label = tk.Label(root,
                         text="CHOOSE THE NUMBER OF PLAYERS THAT WILL BE PLAYING",
                         font="Times 13",
                         fg="white",
                         bg="#85C1E9")
players_label.pack(fill=X,ipady=40)


#No. of players and button for players name
b0 = tk.Button(root, text="Click here after player credentials", command=determine_players)
b0.pack(fill=X, ipady=20)
root.mainloop()

而且这段代码是在点击 UI 小部件按钮之后

def determine_players():
top = tk.Tk()
top.geometry("480x320")
text_file = open("players.txt", "r")
message = text_file.read()
players = message.split()
point1 = 0
point2 = 1
#print(players)
if len(players) == 2:

    proc = ImageProcess()
    img = cv2.imread("array_try/Character_extract_image1.jpg")

    print(proc.frame_table(img))
    Player1 = players[0]  
    Player2 = players[1]
    player1 = tk.Label(top,
                         text=Player1,
                         font="Times 45",
                         fg="white",
                         bg="#0000FF")
    #player1.pack(side='left', padx=10, pady=10, anchor= N)
    player1.grid(row=0, column=0)
    player1.config(width=7)


    text1 = tk.Text(top, heigh=30, width=30)

    pickle_in = open("game_file.pickle","rb")
    example_dict = pickle.load(pickle_in)

    text1.insert(tk.INSERT,example_dict[point1])
    text1.grid(column=0, row=1, sticky='N')

如果有人可以帮助我,我们将不胜感激。谢谢。

【问题讨论】:

    标签: python tkinter


    【解决方案1】:

    我建议查看 WaKo 的这个答案:Two windows: First Login after that main program。我一直在使用 Tkinter GUI,我发现这个解决方案最适合拥有一个初始窗口,然后是另一个。关键功能是顶层、销毁、去图标化和撤回。您可以非常轻松地将任何相关数据从 Toplevel 移动到主窗口。

    【讨论】:

    • 哦,好吧,我会注意的。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-02
    • 2016-03-02
    • 1970-01-01
    • 2014-10-19
    • 1970-01-01
    • 1970-01-01
    • 2017-06-14
    相关资源
    最近更新 更多