【发布时间】:2020-04-19 22:54:45
【问题描述】:
我有两个类产生两个单独的 GUI 窗口。我正在努力实施一种情况,例如如果在第一个 GUI 中按下按钮,它会在运行时之后将标签添加到第二个 GUI。有人可以为我提供解决方案吗?
Class CustomerOrder:
def __init__(self, master):
self.master = master
master.title("Customer Order GUI")
self.completedButton1 = Label(master,text=" Place Order:")
self.completedButton1.pack(side=TOP)
root = Tk()
my_gui = CustomerOrder(root)
root.mainloop()
class baristaPage(tk.Frame):
def __init__(self, master):
self.master = master
master.title("baristaPage")
self.baristaPage = Label(text="Barista Page")
self.baristaPage.place(x=0,y=0)
dashboard = Label(text="Customer Queue System")
dashboard.place(x=0,y=80)
root = Tk()
my_gui = baristaPage(root)
root.mainloop()
【问题讨论】:
-
当您想要拥有多个 GUI 窗口时,一个好的方法是为每个窗口创建
tk.Toplevel小部件(并且只在脚本的主要部分调用tk.Tk()一次)。在这种情况下,您可以在创建类的实例时将它们作为master传递(而不是root)。 -
对不起。我不认为你理解这个问题。我想要两个单独的 GUI,因为它们在概念上将显示在商店内的两个单独的监视器上。例如一台显示器供客户使用,一台显示器供咖啡师使用
-
只要代码在同一个 CPU 上运行(即使 2 个 GUI 窗口显示在 2 个不同的监视器上),最好对主窗口进行一次调用
Tk()(说,给咖啡师的那个),然后打电话给Toplevel()给另一个(给顾客的那个)。 -
您是否希望这段代码在不同机器上的不同进程中运行?它的格式化方式看起来像是您试图在一个进程中创建两个窗口。
标签: python python-3.x user-interface tkinter tkinter-layout