2. Teil:
Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
Dim Rnd As New System.Random
Dim l1 As Integer
Dim l2 As Integer = 0
Me.Controls.AddRange(New Control() {dgv})
With (dt.Columns)
.Add("Zahl1", GetType(Integer))
.Add("Zahl2", GetType(Integer))
.Add("Eingabe", GetType(Integer))
.Add("Ergebniss", GetType(Integer))
.Add("richtig", GetType(Integer))
.Add("falsch", GetType(Integer))
End With
If IO.File.Exists(DatasetName) Then dt.ReadXml(DatasetName)
For i As Integer = 1 To 10
z_z:
Dim zz As Integer
zz = Rnd.Next(-2, +2)
If zz = 0 Then GoTo z_z
s_1:
s1 = Rnd.Next(10000, 100000000)
If InStr(s1 / 2, ",") > 0 Then GoTo s_1
s2 = Rnd.Next(100, 9999)
s_2:
s1 = s1 + zz
eg = s1 / s2
If InStr(eg / 2, ",") > 0 Then GoTo s_2
Dim lb0 As New Label
l1 = 0
Me.Controls.Add(lb0)
lb0.Name = "Zahl1_" & CStr(i)
lb0.Left = 20
l2 = l2 + 20
lb0.Top = l2
lb0.Width = 60
lb0.Height = 15
lb0.Text = s1
lb0.TextAlign = ContentAlignment.MiddleRight
lb0.Visible = True
mylabelBoxes.Add(lb0.Name, lb0)
Dim lb1 As New Label
l1 = 1
Me.Controls.Add(lb1)
lb1.Name = "rechenart_" & CStr(i)
lb1.Left = 80
lb1.Top = l2
lb1.Width = 15
lb1.Height = 15
lb1.Text = ":"
lb1.TextAlign = ContentAlignment.MiddleCenter
lb1.Visible = True
mylabelBoxes.Add(lb1.Name, lb1)
Dim lb2 As New Label
l1 = 2
Me.Controls.Add(lb2)
lb2.Name = "zahl2_" & CStr(i)
lb2.Left = 95
lb2.Top = l2
lb2.Width = 50
lb2.Height = 15
lb2.Text = s2
lb2.TextAlign = ContentAlignment.MiddleRight
lb2.Visible = True
mylabelBoxes.Add(lb2.Name, lb2)
Dim lb3 As New Label
l1 = 3
Me.Controls.Add(lb3)
lb3.Name = "gleich_" & CStr(i)
lb3.Left = 145
lb3.Top = l2
lb3.Width = 15
lb3.Height = 15
lb3.Text = "="
lb3.TextAlign = ContentAlignment.MiddleCenter
lb3.Visible = True
mylabelBoxes.Add(lb3.Name, lb3)
l1 = 4
Dim tx4 As New TextBox
Me.Controls.Add(tx4)
tx4.Name = "Ergebnis_" & CStr(i) 'eindeutiger Name
tx4.Left = 160
tx4.Top = l2
tx4.Width = 80
tx4.Height = 15
tx4.BorderStyle = BorderStyle.None
tx4.BackColor = System.Drawing.SystemColors.Control
tx4.Text = "ertghff_" & CStr(i) 'zum Test gefüllt
tx4.TextAlign = HorizontalAlignment.Right
tx4.Visible = True
mytextBoxes.Add(tx4.Name, tx4)
AddEntry(s1, s2, lö, eg, 0, 0)
Next
Dim but As New Button
Me.Controls.Add(but)
but.Text = "Prüfen"
but.Left = 30
but.Width = 50
but.Height = 20
but.Top = mytextBoxes("Ergebnis_10").Top + 30
AddHandler but.Click, AddressOf but_click
dgv.Visible = False
End Sub |