我正在尝试使用Python 3.6中的python-vlc和Gtk创建GUI应用程序。但是当我尝试访问我的GtkDrawingArea小部件的xid(将其与我的播放器的屏幕绑定)时,我收到一条错误消息
AttributeError:'GdkWaylandWindow'对象没有属性'get_xid'
以下是我尝试获取GtkDrawingArea小部件的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)
那么,如何将我的播放器与此小部件绑定?
PS - 我正在使用Ubuntu 17.10作为我的操作系统,它默认使用Gnome shell。
答案 0 :(得分:0)
我认为这是因为默认情况下Gtk + 3.0应用程序将直接通过Wayland。要强制应用程序通过XWayland(X客户端 over Wayland),请使用
启动应用程序GDK_BACKEND=x11 your-app