Python 3.6でpython-vlcとGtkを使用してGUIアプリケーションを作成しようとしています。私は私のGtkDrawingAreaウィジェット(私のプレイヤーの画面でそれをバインドする)のxidがアクセスしようとする。しかし、私はエラーメッセージ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 - 私はデフォルトでGnomeシェルを使用している私のオペレーティングシステムとしてUbuntu 17.10を使用しています。
これはXウィンドウシステムのウィンドウのIDを参照するため、xidと呼ばれています。 WaylandはXウィンドウシステムではないため、ウィンドウにはxidsがありません。 –
ログインギアのアイコンで、XorgでUbuntuを選択します。あなたがGstreamer wayland sinkのwayland searchを試したいのであれば。 –
奇妙なことに、私はPyGTK2を使用する古いアプリを保守しており、 'self.player.set_xwindow(self.window.xid)'が動作します:\ – Phoenix87