Я не думаю, что вы можете так смешивать наборы инструментов Tkinter и Cocoa.self.root
является атрибутом класса App
, который наследуется от AppKit.NSApplication
.Я предполагаю, что вызов Tk()
возвращает указатель, который затем передается платформам Cocoa, но указывает на структуру данных Tk, которую он не может понять.Кроме того, и Tkinter, и PyObjC нуждаются в своих собственных событиях;Я не уверен, что вы можете даже смешать два (хотя я никогда не пробовал).
Я бы порекомендовал использовать один инструментарий пользовательского интерфейса или другой, но не оба.