파이썬 3.6에서 파이썬 -vlc와 Gtk를 사용하여 GUI 애플리케이션을 만들려고합니다. 내 GtkDrawingArea 위젯의 XID에 액세스하려고 할 때 (내 플레이어의 화면을 바인딩), 나는 오류 메시지가GtkDrawingArea 위젯의 xid를 가져올 수 없습니다.
AttributeError를 얻을 : 'GdkWaylandWindow'객체에는 속성이 없습니다 'get_xid'여기
def vlc_realize_handler(self, widget, data=None):
self.win_id = widget.get_property('window').get_xid()
self.player.set_xwindow(self.win_id)
그래서, 어떻게이 위젯 내 플레이어를 결합 않은 : 나는 GtkDrawingArea 위젯의 XID를 가져 오기 위해 노력하고있어 코드의 부분은?
PS - 기본적으로 Gnome 셸을 사용하는 운영체제로 우분투 17.10을 사용하고 있습니다.
X 윈도우 시스템에서 윈도우의 ID를 참조하기 때문에 xid라고합니다. Wayland는 X 윈도우 시스템이 아니므로 윈도우에 xids가 없습니다. –
로그인 기어 아이콘에서 Xorg에서 Ubuntu를 선택하십시오. Gstreamer wayland sink의 wayland 검색을 시도하고 싶다면. –
이상하게도 PyGTK2를 사용하는 오래된 앱을 유지하고 있으며'self.player.set_xwindow (self.window.xid)'가 작동합니다 : \ – Phoenix87