Почему библиотека gdspy выдает ошибку tkinter tcl при попытке использовать средство просмотра макета - PullRequest
0 голосов
/ 02 июля 2019

Я использую библиотеку gdspy, которая использует tkinter для предварительного просмотра макета. Но при попытке использовать:

gdspy.LayoutViewer(library=None, cells=[cell])

Питон, дай мне:

    Traceback (most recent call last):
  File ".\InductorGen.py", line 726, in <module>
    gdspy.LayoutViewer(library=None, cells=[cell])
  File "C:\Users\Maël\Anaconda3\lib\site-packages\gdspy\viewer.py", line 182, in __init__
    self.grid(sticky='nsew')
  File "C:\Users\Maël\Anaconda3\lib\tkinter\__init__.py", line 2226, in grid_configure
    + self._options(cnf, kw))
_tkinter.TclError: cannot use geometry manager grid inside . which already has slaves managed by pack

вот код из программы просмотра макета gdspy: gdspy_layoutviewer

1 Ответ

0 голосов
/ 02 июля 2019

Просматривая код gdspy, кажется, что предполагается, что вызывающая сторона использует grid внутри корневого виджета. Вернее, предполагается, что в корневом окне нет других виджетов.

Используется grid для внедрения себя в нулевую строку и нулевой столбец корневого окна. Если ваш код (или сама Anaconda) использует pack в корневом виджете, это объяснит ошибку, которую вы получите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...