Differenze tra le versioni di "Stampare un Controllo grafico posto sul Form"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "Ogni Controllo (Oggetto) grafico, posto sul Form, è in definitiva una finestra inglobata nel Form medesimo. <BR>Per stampare un Controllo grafico, è necessario individuare d...") |
|||
Riga 22: | Riga 22: | ||
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
+ | |||
+ | With Printer1 | ||
+ | .Paper = .A4 | ||
+ | .Resolution = Desktop.Resolution | ||
+ | .Print | ||
+ | End With | ||
+ | |||
+ | '''End''' | ||
+ | |||
+ | '''Public''' Sub Printer1_Draw() | ||
Dim dw As DesktopWindow | Dim dw As DesktopWindow | ||
Dim im As Image | Dim im As Image | ||
− | + | ||
<FONT Color=gray>' ''Individua la "finestra della "GridView" mediante il fuo identificatore:''</font> | <FONT Color=gray>' ''Individua la "finestra della "GridView" mediante il fuo identificatore:''</font> | ||
With dw = New DesktopWindow(GridView1.Handle) | With dw = New DesktopWindow(GridView1.Handle) | ||
Riga 32: | Riga 42: | ||
End With | End With | ||
− | With | + | With Paint |
− | . | + | .DrawImage(im, GridView1.X, GridView1.Y, GridView1.W, GridView1.H, 1.0, Null) |
− | . | + | .Fill |
+ | .End | ||
End With | End With | ||
'''End''' | '''End''' |
Versione delle 13:26, 21 mag 2021
Ogni Controllo (Oggetto) grafico, posto sul Form, è in definitiva una finestra inglobata nel Form medesimo.
Per stampare un Controllo grafico, è necessario individuare dunque il numero identificativo di tale Controllo, ossia della sua finestra, e passarlo alla Classe "DesktopWindow" del Componente "gb.desktop.x11".
Mostriamo un esempio pratico commentato, nel quale sul Form principale è posta una "GridView" che sarà dunque stampata.
E' necessario attivare il Componente "gb.desktop.11".
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() With Printer1 .Paper = .A4 .Resolution = Desktop.Resolution .Print End With End Public Sub Printer1_Draw() Dim dw As DesktopWindow Dim im As Image ' Individua la "finestra della "GridView" mediante il fuo identificatore: With dw = New DesktopWindow(GridView1.Handle) ' Cattura l'immagine della "GridView": im = .GetScreenshot(True).Image End With With Paint .DrawImage(im, GridView1.X, GridView1.Y, GridView1.W, GridView1.H, 1.0, Null) .Fill .End End With End