Я настраиваю графический интерфейс Tkinter в довольно длинном классе Python с атрибутами вверху и методами внизу. Чтобы избежать необходимости так часто прокручивать вверх и вниз, было бы удобно выделить методы в независимый файл. Но я не могу найти точный синтаксис, позволяющий двум файлам взаимодействовать друг с другом как с частями одного класса. Следующие фрагменты сильно сокращены и отредактированы.
GUI определен в classExample.py:
# Imports from standard Python modules
import tkinter as tk
from tkinter import ttk
# Imports from custom app modules
import opus as op
# Graphical User Interface
class WC:
def __init__(self, root, op):
# Root window
self.root = root
# App structure: Notebook tab manager with two tabs
self.nb = ttk.Notebook(self.root)
self.tab1 = ttk.Frame(self.nb)
self.nb.add(self.tab1, text="")
self.tab2 = ttk.Frame(self.nb)
self.nb.add(self.tab2, text="")
self.nb.grid()
# Tab two, structure: two Frames side by side, form and control
self.tab2_form = ttk.Frame(self.tab2)
self.tab2_ctrl = ttk.Frame(self.tab2)
self.tab2_form.grid(row=0, column=0, padx=30, pady=10)
self.tab2_ctrl.grid(row=0, column=1, padx=30, pady=10)
...
# Tab two, "form" Frame: widgets
...
self.country_input = tk.StringVar()
self.country_box = ttk.Combobox(self.tab2_form, values=["Canada", "Mexico", "USA",], textvariable=self.country_input)
self.country_box.grid(row=2, column=1, sticky=("N", "E", "S", "W"), padx=10, pady=5)
self.country_box.bind("", op.set_country)
...
self.root.mainloop()
if __name__ == "__main__":
root = tk.Tk()
WC(root, op)
root.mainloop()
Метод определен в пользовательском модуле opus.py:
from classExample import WC as wc
# Methods that operate with user data
country = ""
def set_country(self):
country = wc.country_input.get()
Подробнее здесь: https://stackoverflow.com/questions/785 ... ndent-file
Python Tkinter структурирован в класс: могут ли методы находиться в независимом файле? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Хорошо ли структурирован мой интеграционный тест и почему он возвращает ошибку импорта?
Anonymous » » в форуме Python - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Хорошо ли структурирован мой интеграционный тест и почему он возвращает ошибку импорта?
Anonymous » » в форуме Python - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Хорошо ли структурирован мой интеграционный тест и почему он возвращает ошибку импорта?
Anonymous » » в форуме Python - 0 Ответы
- 9 Просмотры
-
Последнее сообщение Anonymous
-