VB.Net Button Arrays

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • VB.Net Button Arrays

      Hallo in dem Tutorial Will ich euch zeigen wie ihr ganz leicht einen Button Array macht
      Als erstes erstellt ihr eine Form
      Dann geht ihr in den Source Code und Schreibt die Sub

      Quellcode

      1. Sub FormLoad(ByVal Sender As System.Windows.Forms.Form, ByVal e As EventArgs) Handles Me.Load
      2. End Sub


      und noch eine:

      Quellcode

      1. Sub ButtonsClick(ByVal Sender As System.Windows.Forms.Button, e As EventArgs)
      2. End Sub


      und die letzte

      Quellcode

      1. Sub CreateNewButton(ByVal button As Button, ByVal position As Point, ByVal size As Size, ByVal MyForm As Form, ByVal Name As String, ByVal Index As Integer)
      2. End Sub

      so Nun zur Erklärung
      Die erste Sub sollte klar sein die wird aufgerufen wenn die form geladen wird
      die zweite sub wird aufgerufen wenn einer der Buttons im Array gedrückt wird
      und Nr. 3 Zum erstellen des Buttons

      so dann Brauchen wir noch Variablen die kommen Über die Subs

      Quellcode

      1. Dim Buttons(1) As Button

      das erstellt den eigentlichen ButtonArray
      und:

      Quellcode

      1. Dim i As Long

      das ist der index des aktuellen Buttons
      so in der Load Sub wird dann die ButtonCreate sub aufgerufen das Machen wir mit

      Quellcode

      1. i = 0
      2. CreateNewButton(Buttons(i), New Point(0, 0), New Size(New Point(75, 23)), Me, "Button" + Index, Index)
      3. i += 1
      4. ReDim Buttons(i + 1)

      zur Erklärung
      als erstes wird der Index auf 0 gesetzt damit wird auch der buttonArray 0 zeurst befüllt
      dann wird die sub aufgerufen mit den dem Button der erstellt werden soll, der position und grösse, dem Übergeordneten Container, dem Namen und dem Index
      danach wird der index plus 1 gesetzt damit der nächste Button den nicht überschreibt
      und am ende wird der ButtonArray um einen slot grösser.
      nun zur Create Sub
      als erstes müssen wir ja unserem Button einen Werz zuteilen dafür nehmen wir den wert eines Buttons mir

      Quellcode

      1. button = New Button

      dann stelen wir die Propertis um
      damit wir nich immer button. schreiben müssen verwenden wir with

      Quellcode

      1. With (button)
      2. End With

      das sagt dem Compiler für alles was darin steht wo nur . steht soll er davor button einsetzen
      in das with kommt dan zuerst mal die einstellungen das der button in die Form kommt

      Quellcode

      1. .Parent = Form
      2. .Parent.Controls.Add(button)

      nun kömmen wir zu den Grundeinstellungen:
      Name und Tabindex die Braucht der Pc um den Button anzusprechen

      Quellcode

      1. .Name = Name
      2. .TabIndex = Index

      so nun kömmen wir zu den Für den user wichtigen Propertis

      Quellcode

      1. .Text = "Click Me"
      2. .Size = size
      3. .Location = position
      4. .Visible = True


      so nun müssen wir ihm sagen dass er die sub aufrufen muss wenn ein Button geclickt wird das geht mit

      Quellcode

      1. AddHandler .Click, AddressOf ButtonsClick

      das wars für das With und diese Sub.

      dann gehen wir in die Sub ButtonsClick
      da lassen wir dann einen button erstellen der eine Random Position hat

      Quellcode

      1. Dim rnd As New Random
      2. CreateNewButton(Buttons(i), New Point(rnd.Next(0, Me.Width), rnd.Next(0, Me.Height)), New Size(New Point(75, 23)), Me, "Button" + i.ToString, i)
      3. sender.Enabled = False
      4. i += 1
      5. ReDim Buttons(i + 1)

      damit wird zuerst eine random variable erzugt
      dann wird wieder ein Button erstellt als position wird eine zufalszahl benutzt mit

      Quellcode

      1. rnd.Next

      dann wird der aktuelle Button unklickbar gemacht den aktuellen Button ruft man mit sender auf
      und dann wird der index wieder erhöht und der buttonarray vergrössert

      noch ein nachtrag
      wie erkennen wir jetst welcher Button Geklickt wurde
      das geht mit einer abfrage mit der wier infos aus dem sender holen

      Quellcode

      1. If (Sender.Name = "Button 0") Then
      2. End If
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )