Форум сайта python.su
Написал один сценарий. В нем описал виды текста (tkFont), которые буду использовать во всех последующих сценариях. Как сделать, чтобы в другом сценарии (первый в него импортируется) все созданные виды текста продолжали работать?
Осуществил следующее:
Описал первый сценарий как класс. Добавил метод __call__. Все шрифты которые насоздавал в первом сценарии переименовал в self.Имя_Шрифта = tkFont….. После импорта первого сценария во втором:
х = первый_сценарий.имя_класса()
а = х.Имая_Шрифта
Создаю кнопку. В свойствах :
Button = а
И что бы вы думали? Фиг вам. Не работает и ошибку не выдает.
Помогите, как будет правильно? Наследовать один клас от другого как-то не хочеться.
P.S. И дублировать часть программы тоже не хочеться.
Отредактировано (Март 7, 2011 19:05:36)
Офлайн
Разобрался. При переходе от сценария к сценарию я не переносил корневое окно root, а каждый раз создавал новое. В результате все свойства прошлого корневого окна терялись. Необходимо корневое окно передавать дальше, как эстафетную палочку, тогда все свойства корневого окна будут работать, в том числе и определенные ранее шрифты. Единственное, что - его необходимо очищать от всего методом destroy() либо другим.
Отредактировано (Март 7, 2011 20:26:25)
Офлайн