2017-10-31 4 views
1

Ich versuche ein Youtube-Video in eine QWebEngineView einzubetten, das Video wird geladen, aber die Vollbild-Schaltfläche ist deaktiviert mit dieser Meldung "Vollbild ist nicht verfügbar" der Einbettungscode bedeutet „allowfullscreen“PyQt5: "Fullscreen ist nicht verfügbar" Einbetten von YouTube-Videos als iFrame in QWebEngineView

-Code-Schnipsel haben:

web = QWebEngineView() 
htmlString = """ 
      <iframe width="560" height="315" src="https://www.youtube.com/embed/L0MK7qz13bU?rel=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe> 
      """ 
web.setHtml(htmlString, QUrl(baseUrl)) 

Antwort

1

So aktivieren sie den Vollbildmodus ist es notwendig, die FullScreenSupportEnabled Attribut und akzeptieren sie die fullScreenRequested Reihenfolge der Seite zu ermöglichen.

if __name__ == '__main__': 
    app = QApplication(sys.argv) 
    web = QWebEngineView() 
    web.settings().setAttribute(QWebEngineSettings.FullScreenSupportEnabled, True) 
    web.page().fullScreenRequested.connect(lambda request: request.accept()) 
    baseUrl = "local" 
    htmlString = """ 
      <iframe width="560" height="315" src="https://www.youtube.com/embed/L0MK7qz13bU?rel=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe> 
      """ 
    web.setHtml(htmlString, QUrl(baseUrl)) 

    web.show() 
    sys.exit(app.exec_()) 

Screenshot:

enter image description here

+0

danke, das das Problem löst! – joke4me

+0

BTW, ich sehe diese Warnungen in PyCharm Konsole, irgendeine Idee, was das bedeutet? "[20068: 5672: 1031/203943.715: FEHLER: gl_context_wgl.cc (78)] Konnte GL Kontexte nicht teilen." – joke4me

+0

Das sind Chromium-Warnungen, das Backend, das Qt für QWebEngineView verwendet, sagt Ihnen, dass einige Dinge nicht unterstützt werden, aber es sind keine Fehler. Dies sind die gleichen Nachrichten, die von Google-Chrome, Mozilla usw. generiert werden, wenn Sie es von der Konsole aus ausführen. – eyllanesc

Verwandte Themen