Python 创建tkinter标签、按钮。。。在课堂上

Python 创建tkinter标签、按钮。。。在课堂上,python,class,tkinter,Python,Class,Tkinter,我正在努力改进tkinter应用程序的结构 因此,我尝试了线程中提到的OOP方法 我试着玩弄它,但除了示例代码之外,我没能走得更远。我只需要一个状态栏和一个主体,但我无法在状态栏/主类中显示任何内容(例如标签,框架,画布,按钮,…) 这就是我目前拥有的: import tkinter as tk class Statusbar(tk.Frame): #create Labels, Buttons,... class Main(tk.Frame): #create Labels

我正在努力改进tkinter应用程序的结构

因此,我尝试了线程中提到的OOP方法

我试着玩弄它,但除了示例代码之外,我没能走得更远。我只需要一个状态栏和一个主体,但我无法在状态栏/主类中显示任何内容(例如
标签
框架
画布
按钮

这就是我目前拥有的:

import tkinter as tk

class Statusbar(tk.Frame):
    #create Labels, Buttons,...

class Main(tk.Frame):
    #create Labels, Buttons,...


class MainApplication(tk.Frame):
    def __init__(self, parent, *args, **kwargs):
        tk.Frame.__init__(self, parent, *args, **kwargs)
        self.parent = parent

        self.statusbar = Statusbar(self)
        self.main = Main(self)
        self.statusbar.grid()
        self.main.grid()


if __name__ == "__main__":
    root = tk.Tk()
    MainApplication(root).grid()
    root.mainloop()
也许你可以给我指出正确的方向,或者给我举个简单的例子。多谢各位

编辑:尝试更具体一些:

我曾经使用过tkinter/python。我只是不知道如何继续从上面提出的OOP结构。
Statusbar
Main
类中,我无法使任何内容正常工作(例如:创建标签、按钮等)。因此,如果你能给我一个简单的例子来在这些类中创建任何东西,我很乐意去做。

这里有一些东西可以让你大致了解一下:

import tkinter as tk


class Statusbar(tk.Frame):
    def __init__(self, parent, *args, **kwargs):
        tk.Frame.__init__(self, parent, *args, **kwargs)
        lbl1 = tk.Label(self, text='Status1', fg='yellow', bg='blue')
        lbl1.pack(side='left')
        lbl2 = tk.Label(self, text='Status2', fg='white', bg='green')
        lbl2.pack(side='left')


class Main(tk.Frame):
    def __init__(self, parent, *args, **kwargs):
        tk.Frame.__init__(self, parent, *args, **kwargs)
        txt = tk.Text(self, width=15, height=5)
        txt.insert(tk.END, 'Hello world')
        txt.pack()


class MainApplication(tk.Frame):
    def __init__(self, parent, *args, **kwargs):
        tk.Frame.__init__(self, parent, *args, **kwargs)
        self.parent = parent

        self.statusbar = Statusbar(self)
        self.main = Main(self)

        self.statusbar.grid()
        self.main.grid()


if __name__ == "__main__":
    root = tk.Tk()
    MainApplication(root).grid()
    root.mainloop()
@X_841“无法在
状态栏
中获取任何内容”:目前,
类状态栏
是无效的类防御。参观并延伸到一个有效的班级。