Если ваш пользовательский виджет содержит другие (возможно, стандартные) виджеты, вы можете просто вызвать исключение в переопределенных методах pack_
.Таким образом, никто не может положить вещи (легко).Внутри вашего класса вы должны будете использовать super(...).pack_xxx
вместо self.pack_xxx
.
Но, вероятно, лучше получить из gtk.Container
.Затем вам нужно будет реализовать его абстрактные методы, такие как do_add(self, widget)
.
. Если вы рисуете только пользовательский контент (без дочерних элементов), нет необходимости получать его из виджета контейнера.Смотрите руководство на pygtk.org .