Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB.NET: Formille tulostaminen

tnb [20.11.2003 22:31:59]

#

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 Class

alligaattori [12.11.2005 03:51:51]

#

Eikö tosiaan tarvitse tuon pidempää liturgiaa että saa jo
tulostettua hello :)?. Vaikuttaa tosiaankin aika käyttökelpoiselta kieletä :)

NanoSoft [23.02.2006 21:02:28]

#

niin no, kukapa sille formille edes mitään tulostaa

ErroR++ [11.05.2011 14:05:17]

#

Ei toimi. erroria pukkaa.

eetwo [03.09.2013 14:54:23]

#

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 Sub

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta