Differenze tra le versioni di "Ottenere la schermata (screenshot) della finestra di un programma"

Da Gambas-it.org - Wikipedia.
Riga 3: Riga 3:
  
 
Mostriamo un esempio, nel quale verrà effettuata un'istantanea schermata della finestra di un programma Gambas, dalla quale si otterrà un file immagine:
 
Mostriamo un esempio, nel quale verrà effettuata un'istantanea schermata della finestra di un programma Gambas, dalla quale si otterrà un file immagine:
  '''Public''' Sub Button1_Click()
+
  Public Sub Button1_Click()
 
    
 
    
 
   Dim pc As Picture
 
   Dim pc As Picture
 
    
 
    
  pc = Desktop.Windows.FromHandle(Me.Handle).GetScreenshot(True)
+
  pc = Desktop.Windows.FromHandle(Me.Handle).GetScreenshot(True)
 
      
 
      
  pc.Save("/tmp/immagine.png", 100)
+
  pc.Save("/tmp/immagine.png", 100)
 
    
 
    
  '''End'''
+
  End
  
  
 
In quest'altro caso, tenendo ''attiva'' la finestra di un programma, se ne otterrà una schermata e quindi un relativo file immagine.
 
In quest'altro caso, tenendo ''attiva'' la finestra di un programma, se ne otterrà una schermata e quindi un relativo file immagine.
 
<BR>Poniamo il caso di avere attiva la finestra della calcolatrice (il nome della sua finestra è ''Calculator''):
 
<BR>Poniamo il caso di avere attiva la finestra della calcolatrice (il nome della sua finestra è ''Calculator''):
  '''Public''' Sub Button1_Click()
+
  Public Sub Button1_Click()
 
    
 
    
 
   Dim i As Integer
 
   Dim i As Integer
 
   Dim pc As Picture
 
   Dim pc As Picture
 
    
 
    
  i = Desktop.FindWindow("*Calculator*", Null, Null)[0]
+
  i = Desktop.FindWindow("*Calculator*", Null, Null)[0]
 
    
 
    
  pc = Desktop.Windows.FromHandle(i).GetScreenshot(True)
+
  pc = Desktop.Windows.FromHandle(i).GetScreenshot(True)
 
      
 
      
  pc.Save("/tmp/immagine.png", 100)
+
  pc.Save("/tmp/immagine.png", 100)
 
    
 
    
  '''End'''
+
  End
  
  
  
 
=Note=
 
=Note=
* Vedere anche questa pagina della Wiki: [[Ottenere_un%27immagine_del_Form|Ottenere un'immagine del Form]].
+
* Vedere anche questa pagina della Wiki: [[Ottenere un'immagine del Form]].

Versione delle 16:19, 10 giu 2024

Per ottenere la schermata (screenshot) della finestra di un programma Gambas [nota 1] o di un programma esterno, si potranno utilizzare alcune risorse della Classe Desktop attivando i Componenti gb.desktop e gb.desktop.x11 .


Mostriamo un esempio, nel quale verrà effettuata un'istantanea schermata della finestra di un programma Gambas, dalla quale si otterrà un file immagine:

Public Sub Button1_Click()
 
 Dim pc As Picture
  
 pc = Desktop.Windows.FromHandle(Me.Handle).GetScreenshot(True)
   
 pc.Save("/tmp/immagine.png", 100)
  
End


In quest'altro caso, tenendo attiva la finestra di un programma, se ne otterrà una schermata e quindi un relativo file immagine.
Poniamo il caso di avere attiva la finestra della calcolatrice (il nome della sua finestra è Calculator):

Public Sub Button1_Click()
 
 Dim i As Integer
 Dim pc As Picture
 
 i = Desktop.FindWindow("*Calculator*", Null, Null)[0]
  
 pc = Desktop.Windows.FromHandle(i).GetScreenshot(True)
   
 pc.Save("/tmp/immagine.png", 100)
  
End


Note