Autore Topic: Video da una Classe accresce un problema di DrawingArea  (Letto 214 volte)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.253
  • Ne mors quidem nos iunget
    • Mostra profilo
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.253
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Video da una Classe accresce un problema di DrawingArea
« Risposta #1 il: 26 Agosto 2017, 18:00:48 »
Alla prima proposta di codice dell'autore della discussione, tale ingo, è possibile dare una risposta efficace e risolutiva.

Il codice della Classe principale sarebbe questo:
Codice: [Seleziona]
Public vc As VideoClass


Public Sub Button1_Click()

 If Not Exist("/dev/video0") Then
   Message.Info("WebCam non inserita !")
   Return
 Endif

 vc = New VideoClass
 
 vc.drwArea.Refresh()

End


Il codice della Classe secondaria, chiamata "VideoClass.class" sarebbe questo:
Codice: [Seleziona]
Public hPipe As MediaPipeline
Public hSource As MediaControl
Public hSink As MediaControl
Public hdrwVideo As DrawingArea
Property {drwArea} As DrawingArea


Public Sub _new()
 
 With hdrwVideo = New DrawingArea(fmain)
   .X = 0
   .Y = 0
.W = FMain.W
.H = 400
   .Background = Color.Transparent
 End With
 
  hPipe = New MediaPipeline As "hPipe"
 
  hSource = New MediaControl(hPipe, "v4l2src")
  hSource["device"] = "/dev/video0"
  hSink = New MediaControl(hPipe, "xvimagesink")
  hSource.LinkTo(hSink)
 
  hSink.SetWindow(hdrwVideo)
  hPipe.Play()
 
End

Private Function drwArea_Read() As DrawingArea

  Return hdrwVideo
 
End

Private Sub drwArea_Write(Value As DrawingArea)
 
  hdrwVideo = Value
 
  hSink.SetWindow(hdrwVideo)

End
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.143
  • Tonno verde
    • Mostra profilo
Re:Video da una Classe accresce un problema di DrawingArea
« Risposta #2 il: 26 Agosto 2017, 19:03:28 »
Purtroppo non c'è più collegamento fra nabble e la mailing list e chi scrive da li non viene più visto nella mailing, anche questo malfunzionamento di Sourceforge ha indotto alla migrazione a Git.
Forse ti converrebbe rimandare alla mailing list da qui:
https://sourceforge.net/p/gambas/mailman/gambas-user/

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro