Differenze tra le versioni di "Eseguire in streaming un video da youtube mediante l'oggetto WebView"
Riga 26: | Riga 26: | ||
.W = 660 | .W = 660 | ||
.H = 500 | .H = 500 | ||
− | .HTML = "<iframe width=640 height=480 src=http | + | .HTML = "<iframe width=640 height=480 src=http://www.youtube.com/embed/NgUGjCVkXXY frameborder=0 allowfullscreen></iframe>" |
End With | End With | ||
Versione delle 19:50, 19 feb 2017
Per eseguire in streaming un video direttamente da youtube con l'oggetto WebView - senza che sia mostrata l'intera pagina del sito, ma solo il riquadro del video - sono possibili almeno tre modalità.
Uso della proprietà .HTML uno specifico codice in html con il Tag <Iframe>
Questa modalità prevede che sia passata alla proprietà .HTML dell'oggetto WebView uno specifico codice in html contenente il Tag <Iframe>, avendo nel contempo cura di:
- attivare il componente gb.qt4.webkit;
- attivare da codice i plugin necessari per il video;
- far sì che l'indirizzo del video da eseguire sia così formato da tre parti:
- la parte finale sia rappresentata soltanto dal codice identificativo del video;
- tra la parte inziale del dominio e il codice identificativo del video vi deve essere inserita la parola " embed ".
Esempio:
https://www.youtube.com/embed/NgUGjCVkXXY
Vediamo di seguito un codice essenziale e funzionante:
Public Sub Form_Open() Dim wv As WebView WebSettings[WebSettings.PluginsEnabled] = True With wv = New WebView(Me) .X = 20 .Y = 100 .W = 660 .H = 500 .HTML = "<iframe width=640 height=480 src=http://www.youtube.com/embed/NgUGjCVkXXY frameborder=0 allowfullscreen></iframe>" End With End
Uso della proprietà .Url
Questa modalità è più semplice nella sua codifica rispetto alla modalità precedente. Essa si basa sull'uso della proprietà .Url dell'oggetto WebView.
E' necessario creare l'oggetto WebView da codice, avendo cura di:
- non impostare (quindi lasciare a zero) le sue proprietà .W e .H;
- ipostare in modo adeguato al Form le proprietà .X e .Y .
Mostriamo un semplice esempio:
Public Sub Form_Open() Dim wv As WebView WebSettings[WebSettings.PluginsEnabled] = True With wv = New WebView(Me) .X = 50 .Y = -150 .Url = "https://www.youtube.com/watch?v=NgUGjCVkXXY" End With End
Lettura del codice html della pagina del video
Questa modalità prevede la lettura del codice html della pagina contenente il video, e la successiva scelta delle parti di codice essenziali per l'esecuzione del video.
Mostriamo un semplice esempio, nel quale sul Form dovranno essere posti due Button ed una ProgressBar:
Public Sub Button1_Click() Dim wv As WebView With wv = New WebView(Me) .Url = "https://www.youtube.com/watch?v=NgUGjCVkXXY" While .Progress < 1.0 Wait 0.01 ProgressBar1.Value = .Progress Wend End With Wait 0.5 ProgressBar1.Visible = False Avvia_Video(wv) End Public Procedure Avvia_Video(vid As WebView) Dim stringa, s As String Dim i1, i2 As Integer stringa = vid.HTML s = Left(stringa, InStr(stringa, "<head>") - 1) i1 = InStr(stringa, "<div id=\"player-api\"") i2 = InStr(stringa, "</div>", i1) s &= "\n" & Mid(stringa, i1 - 1, (i2 - i1) + 7) i1 = InStr(stringa, "<script>var ytplayer") i2 = InStr(stringa, "</script>", i1) s &= "\n" & Mid(stringa, i1 - 1, (i2 - i1) + 10) & "</html>" WebSettings[WebSettings.PluginsEnabled] = True With vid .X = 100 .Y = 100 .W = 330 .H = 175 .HTML = s End With End Public Sub Button2_Click() Me.Close End