Catturare l'immagine di una GridView con il Componente gb.media

Da Gambas-it.org - Wikipedia.
Versione del 13 mag 2023 alle 10:41 di Vuott (Discussione | contributi) (Creata pagina con "Per catturare l'immagine di una GridView con il Componente gb.media, è possibile usare il seguente codice: Public Sub Form_Open() Dim r, c As Byte With GridView1...")

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Per catturare l'immagine di una GridView con il Componente gb.media, è possibile usare il seguente codice:

Public Sub Form_Open()

 Dim r, c As Byte

 With GridView1
   .Rows.Count = 5
   .Columns.Count = 5
 End With
 
 For r = 0 To 4
   For c = 0 To 4
      GridView1[r, c].Text = "abcde"
   Next 
 Next

End 

Public Sub Button1_Click()

 Dim pl As MediaPipeline
 Dim src, enc, snk As MediaControl
 Dim appoggio As String

 appoggio = Temp

 pl = New MediaPipeline 
 
 src = New MediaControl(pl, "ximagesrc")
' Assegna alla proprietà "xid" del plugin "ximagesrc" il numero idetificativo della "GridView", affinché ne catturi quanto da essa visualizzato:
 src["xid"] = GridView1.Id
 enc = New MediaControl(pl, "jpegenc")
 snk = New MediaControl(pl, "filesink")
 snk["location"] = appoggio

' Collega fra loro i plugin di "GStreamer":
 src.LinkTo(enc)
 enc.LinkTo(snk)
 
' Effettua la ripresa dell'immagine della GridView:
 pl.Play()
 
' Può essere necessario porre una breve pausa per consentire la cattura dell'immagine:
 Wait 1

 Copy appoggio To "/tmp/immagine.jpg"

 pl.Stop()
 pl.Close()
 Print "Cattura immagine effettuata"

End


Note

[1] Vedere anche la seguente pagina: Ottenere_una_schermata_("screenshot")_con_Gambas#Uso_delle_risorse_del_Componente_gb.media