[英]Calling from another class in tkinter python 3.6
Please how can I call 'new' in class staff from self.btn2 in class intro Here is my code请我如何在 class 介绍中的 self.btn2 中调用 class 员工中的“新” 这是我的代码
import tkinter
class intro:
def __init__(self, page1):
self.page1 = page1
self.btn = tkinter.Button(page1, text="next", command=self.me).grid(column=0, row=0)
self.btn2 = tkinter.Button(page1, text="message", command=staff.new(self)).grid(column=1, row=0)
def me(self):
self.page2 = tkinter.Toplevel()
self.b = admin(self.page2)
self.page1.withdraw()
class admin:
def __init__(self, page2):
self.page2 = page2
self.btn = tkinter.Button(page2, text="next", command=self.me2).grid(column=0, row=0)
def me2(self):
self.page3 = tkinter.Toplevel()
self.b = staff(self.page3)
self.page2.withdraw()
class staff:
def __init__(self, page3):
self.page3 = page3
def new(self):
print("hello everybody")
if __name__ == '__main__':
window = tkinter.Tk()
app = intro(window)
window.mainloop()
Please help.请帮忙。 I want to be able to call 'new' in class staff from button in class intro.
我希望能够通过 class 介绍中的按钮在 class 工作人员中调用“新”。 I use python 3.6.
我使用 python 3.6。
From the comment of @acw1668, I repost the question in a better way as answered从@acw1668 的评论中,我以更好的方式重新发布了这个问题作为回答
import tkinter
class intro:
def __init__(self, page1):
self.page1 = page1
self.btn = tkinter.Button(page1, text="next", command=self.me).grid(column=0, row=0)
self.btn2 = tkinter.Button(page1, text="message", command=lambda: staff(self.page1).new()).grid(column=1, row=0)
def me(self):
self.page2 = tkinter.Toplevel()
self.b = admin(self.page2)
self.page1.withdraw()
class admin:
def __init__(self, page2):
self.page2 = page2
self.btn = tkinter.Button(page2, text="next", command=self.me2).grid(column=0, row=0)
def me2(self):
self.page3 = tkinter.Toplevel()
self.b = staff(self.page3)
self.page2.withdraw()
class staff:
def __init__(self, page3):
self.page3 = page3
def new(self):
print("hello everybody")
if __name__ == '__main__':
window = tkinter.Tk()
app = intro(window)
window.mainloop()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.