2016-11-06 2 views
0

Env - python2.7, GStreamer 1.0 sur Windows7objet 'gtk.gdk.Win32Window' n'a pas d'attribut 'get_xid'

Je tentais d'exécuter des codes de http://bazaar.launchpad.net/~jderose/+junk/gst-examples/view/head:/video-player-1.0 sur mon env, et il échoue avec AttributeError: 'gtk.gdk.Win32Window' object has no attribute 'get_xid'

Je trouve le code minimum pour tester get_xid et de le coller ici: -

import gi 
gi.require_version("GdkX11", "3.0") 
gi.require_version('Gtk', '3.0') 
from gi.repository import GdkX11, Gtk, GstVideo 

class App: 
    def __init__(self): 
     win = Gtk.Window() 
     win.resize(400, 400) 
     win.connect('delete-event', Gtk.main_quit) 

     da = Gtk.DrawingArea() 
     win.add(da) 
     win.show_all() 
     import pdb;pdb.set_trace() 
     print da.get_property('window').get_xid() 

if __name__ == "__main__": 
    App() 
    Gtk.main() 

AttributeError: 'gtk.gdk.Win32Window' object has no attribute 'get_xid' 

Idéalement si j'ai importé GdkX11 alors objet fenêtre aurait get_xid, mais sa ne fonctionne pas sur l'environnement de Windows7, ressemble GdkX11 est pas t pour Windows utilisateur. S'il vous plaît me suggérer comment devrais-je résoudre ce problème.

+1

double possible: http://stackoverflow.com/a/8012212/1513933 –

+0

Ceci est spécifique aux fenêtres et je suppose autre solution serait applicable ici. – AlokThakur

Répondre

0

Sur les machines Windows, get_xid() provoquera le problème que vous voyez.

Une solution est fournie dans la réponse suivante: Get the window handle in PyGI

+0

Au lieu de poster des liens comme réponse, ajoutez du texte pour expliquer comment cette réponse aide OP à résoudre le problème actuel.Merci –