Domanda

Voglio giocare un video (con audio) in una semplice interfaccia grafica con tasti "stop" "play", ecc Ci sono classi e widget nel modulo Phonon di Qt per farlo, e alcuni esempi. OK, in modo che sembra essere semplice.

Ma ora ho bisogno di disegnare alcuni elementi grafici personalizzati (che dipendono l'ora corrente nel video) sulla parte superiore dell'immagine video in streaming. Non ho trovato nulla di questo nella documentazione Qt. Qual è il modo canonico di fare questo? Posso solo creare un custom VideoWidget widget e sovrascrivo sua paintEvent? In un'altra domanda qui, qualche ragazzo sembrava avere problemi con questo.

Tutti gli indicatori sarebbe apprezzato.

È stato utile?

Soluzione

Usa QGraphicsView e QGraphicsWidgets. Si può mettere il Phonon :: VideoWidget all'interno di un QGraphicsProxyWidget e diventa utilizzabile come QGraphicsWidget.

Per sovrapposizioni personalizzati, eredita QGraphicsWidget e ignorare la funzione di vernice per disegnare i tuoi widget personalizzati. È possibile aggiungere alla vostra scena e saranno visualizzati sulla parte superiore del widget di video.

Altri suggerimenti

La soluzione non può funzionare perché non è possibile aggiungere un QGLWidget a QGraphicsProxyWidget. Si prega di guardare http://doc.qt.digia.com/qt/qgraphicsproxywidget.html

Si noti che i widget con il Qt::WA_PaintOnScreen attributo set di widget e widget che avvolgere un'applicazione esterna o controllore non può essere incorporato. Esempi sono QGLWidget e QAxWidget.

Si prega di correggermi se sbaglio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top