Начал переписывать приложение учитывая Ваши рекомендации!
Стал вопрос теперь как правильно реализовать класс дочернего окна.
import tkinter as tk
from tkinter import ttk
class Main(tk.Frame):
def __init__(self, root, *attr, **kwargs):
super().__init__(self, root, *attr, **kwargs)
self.init_main()
def init_main(self):
toolbar = tk.Frame()
toolbar.pack(side=tk.TOP, fill=tk.X)
toolbar.config(bg='#d7d8e0', bd=2)
btnOpenDialog = tk.Button(toolbar, text='Добавить позицию', command=self.open_dialog)
btnOpenDialog.pack(side=tk.LEFT)
btnOpenDialog.config(bg='#d7d8e0', bd=0, compound=tk.TOP)
def open_dialog(self):
Child()
"""
class Child(tk.Frame):
def __init__(self):
= tk.Toplevel()
.title('Добавить доходы/расходы')
.geometry('400x220+400+300')
.resizable(False, False)
"""
if __name__ == "__main__":
root = tk.Tk()
my_widget = Main(root)
Main.pack()
root.title("Домашние финансы")
root.geometry("650x450+300+200")
root.resizable(False, False)
root.mainloop()