No, to, na co se kreslí, je e.Graphics. Můžete tedy zavolat jakoukoliv metodu, která bude kdekoliv (třeba v nějakém formuláři, nebo i třídě či modulu) a jako parametr jí předat to e.Graphics. Pak na něj vykreslíte, co chcete, a objeví se to na tom formuláři, jehož objekt Graphics jste předal.
'můžete si do projektu přidat modul, v okně Solution Explorer
'klikněte pravým tlačítkem a přidejte tam novou položku Module
Module Module1
Public Sub VykresliCaru(g As Graphics)
'nyní nemáme e.Graphics, ale g, kreslíme do g
'samozřejmě si můžete přidat i další parametry
g.DrawLine(Color.Black, 0, 0, 100, 100)
End Sub
End Module
A ve formuláři pak zavoláte tohle:
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As PaintEventArgs)
VykresliCaru(e.Graphics) 'předáme e.Graphics jako parametr g
End Sub
Výhodou je, že tuto funkci v modulu můžete volat z různých formulářů, takže můžete díky tomu vykreslovat kam chcete (na formulář Form1, nebo třeba i na tiskárnu).
|