Ottenere l'immagine della finestra di un programma

Da Gambas-it.org - Wikipedia.
Versione del 8 set 2025 alle 16:38 di Vuott (discussione | contributi) (Creata pagina con "==Uso delle risorse del Componente ''gb.media''== Nel seguente codice si otterrà l'immagine di una ''GridView''. <BR>Ovviamente è necessario attivare il Componente ''gb.medi...")
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Vai alla navigazione Vai alla ricerca

Uso delle risorse del Componente gb.media

Nel seguente codice si otterrà l'immagine di una GridView.
Ovviamente è necessario attivare il Componente gb.media .

Private GridView1 As GridView
Private Button1 As Button


Public Sub Form_Open()

 With GridView1 = New GridView(Me)
   .Move(0, 0, 300, 100)
   .Rows.Count = 5
   .Columns.Count = 5
 End With
 For r As Byte = 0 To GridView1.Rows.Max
   For c As Byte = 0 To GridView1.Columns.Max
      GridView1[r, c].Text = "abcde"
   Next 
 Next
 
 With Button1 = New Button(Me) As "Button1"
   .Move(60, 60, Me.W - (Button1.W * 2), Me.H - (Button1.H * 2))
 End With

End 


Public Sub Button1_Click()

 Dim pl As MediaPipeline
 Dim src, vdc, enc, snk As MediaControl

 pl = New MediaPipeline 

 src = New MediaControl(pl, "ximagesrc")
' Assegna l'ID della finestra del programma:
 src["xid"] = ......
 vdc = New MediaControl(pl, "videoconvert")
 enc = New MediaControl(pl, "pngenc")
 snk = New MediaControl(pl, "filesink")
 snk["location"] = "/tmp/immagine.png"

 src.LinkTo(vdc)
 vdc.LinkTo(enc)
 enc.LinkTo(snk)

 pl.Play()

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

End