VB.net kielessä formille printtaus on hiukan vaikeaa koska VB6:n konstit ei käy. Tässä luokka ratkaisu.
Public Class TextPrintClass
' vb.net code
'prints text on form
'to use:
'Dim tp As TextPrintClass = New TextPrintClass
'tp.PrintString("Hello", 150, 20, Me) 'where me refers to form
Public Sub PrintString(ByVal drawstring As String, ByVal x As Single, ByVal y As Single, ByVal sender As Object)
Dim formGraphics As System.Drawing.Graphics = sender.CreateGraphics()
Dim drawFont As New System.Drawing.Font("Arial", 12)
Dim drawBrush As New _
System.Drawing.SolidBrush(System.Drawing.Color.Black)
Dim drawFormat As New System.Drawing.StringFormat
formGraphics.DrawString(drawstring, drawFont, drawBrush, _
x, y, drawFormat)
drawFont.Dispose()
drawBrush.Dispose()
formGraphics.Dispose()
End Sub
End ClassEikö tosiaan tarvitse tuon pidempää liturgiaa että saa jo
tulostettua hello :)?. Vaikuttaa tosiaankin aika käyttökelpoiselta kieletä :)
niin no, kukapa sille formille edes mitään tulostaa
Ei toimi. erroria pukkaa.
Jos ei toimi niin kokeile tätä
Tarvitset 1 timerin (ei tarvitse mitään säätää)
Dim teksti As String = "Tää toimii" 'Teksti joka näytetään ruudussa
Dim fname As Form = Me 'Tätä älä säätele muuten ei toimi
Public Sub PrintString(ByVal drawstring As String, ByVal x As Single, ByVal y As Single, ByVal sender As Object)
Dim formGraphics As System.Drawing.Graphics = sender.CreateGraphics()
Dim drawFont As New System.Drawing.Font("Arial", 12)
Dim drawBrush As New _
System.Drawing.SolidBrush(System.Drawing.Color.Black)
Dim drawFormat As New System.Drawing.StringFormat
formGraphics.DrawString(drawstring, drawFont, drawBrush, _
x, y, drawFormat)
drawFont.Dispose()
drawBrush.Dispose()
formGraphics.Dispose()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.WindowState = FormWindowState.Maximized
PrintString(teksti, 0, 0, fname)
Timer1.Interval = 100
Timer1.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Me.WindowState = FormWindowState.Normal
Timer1.Stop()
End SubAihe on jo aika vanha, joten et voi enää vastata siihen.