Guten Abend,
Ich arbeite gerade an einer Aufgabe aus der Schule. Ich habe jetzt mein erstes Halbjahr Informatik und wir programmieren mit Visual Basic 2010. Dies ist die Aufgabe:
Schreibe folgendes Programm: Es soll die Koordinaten der Maus im Bereich der PaintBox ausgeben und so viele Zeilen, bzw. Spalten zeichnen, wie in den TextBoxen eingegeben.
Das war erstmal kein Problem für mich, also bin ich so weit gekommen:
Es ist soweit fertig, jedoch gibt er mir im Label (in der die Position der Maus angezeigt werden soll) nur eine Kommazahl mit mehreren Nachkommastellen an. Ich versuchte es schon mit CInt, aber da es aufrundet bringt mir das auch nichts. Also brauche ich irgendeinen Befehl, welcher mir den ganzzahligen Teil der Position angibt. Mir ist es nicht geglückt eine Lösung im Internet zu finden.
Vielen Dank schon einmal im vor raus.
Liebe Grüße
TastyBoba
( Wahrscheinlich ist die Lösung super einfach und ich komme wegen mangelnder Erfahrung einfach nicht drauf.)
Ich arbeite gerade an einer Aufgabe aus der Schule. Ich habe jetzt mein erstes Halbjahr Informatik und wir programmieren mit Visual Basic 2010. Dies ist die Aufgabe:
Schreibe folgendes Programm: Es soll die Koordinaten der Maus im Bereich der PaintBox ausgeben und so viele Zeilen, bzw. Spalten zeichnen, wie in den TextBoxen eingegeben.
Das war erstmal kein Problem für mich, also bin ich so weit gekommen:
VB.NET-Quellcode
- #Region "Variablen"
- Dim Spalten As Integer
- Dim Zeilen As Integer
- Dim H1 As Integer
- Dim H2 As Integer
- Dim B1 As Integer
- Dim B2 As Integer
- Dim Start As Boolean = False
- #End Region
- #Region "Raster"
- Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
- Dim z As Graphics = e.Graphics
- Dim stift As New Pen(Color.Black, 2)
- For Y = 1 To Zeilen
- z.DrawLine(stift, 0, Y * H2, PictureBox1.Width, Y * H2)
- Next
- For X = 1 To Spalten
- z.DrawLine(stift, X * B2, 0, X * B2, PictureBox1.Height)
- Next
- End Sub
- #End Region
- #Region "Erzeugung starten"
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- If IsNumeric(TextBox1.Text) And IsNumeric(TextBox2.Text) Then
- Spalten = TextBox2.Text
- Zeilen = TextBox1.Text
- H1 = PictureBox1.Height
- B1 = PictureBox1.Width
- H2 = PictureBox1.Height / Zeilen
- B2 = PictureBox1.Width / Spalten
- Start = True
- PictureBox1.Invalidate()
- End If
- End Sub
- #End Region
- #Region "Position des Zeigers"
- Private Sub PictureBox1_MouseMove(sender As Object, e As MouseEventArgs) Handles PictureBox1.MouseMove
- If Start = True Then
- Label3.Text = e.Y / (H1 / Zeilen) + 1
- Label4.Text = e.X / (B1 / Spalten) + 1
- End If
- End Sub
- #End Region
Es ist soweit fertig, jedoch gibt er mir im Label (in der die Position der Maus angezeigt werden soll) nur eine Kommazahl mit mehreren Nachkommastellen an. Ich versuchte es schon mit CInt, aber da es aufrundet bringt mir das auch nichts. Also brauche ich irgendeinen Befehl, welcher mir den ganzzahligen Teil der Position angibt. Mir ist es nicht geglückt eine Lösung im Internet zu finden.
Vielen Dank schon einmal im vor raus.
Liebe Grüße
TastyBoba
( Wahrscheinlich ist die Lösung super einfach und ich komme wegen mangelnder Erfahrung einfach nicht drauf.)
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „TastyBoba“ ()