Make your own free website on Tripod.com

VB -12: Module

Ordnung ist das halbe Leben...

In unserem letzten Beispiel haben wir unser neues Unterprogramm einfach in unser Modul "HauptForm" geschrieben. Bei Unterprogrammen, die von verschiedenen Prozeduren/Modulen (Forms) genutzt werden sollen, also allgemeingültigeren Unterprogrammen, ist es jedoch sinnvoll, diese in ein separates Modul auszulagern. Das dient nicht zuletzt der Übersichtlichkeit.

Wir fügen unserem Projekt also ein neues Modul hinzu. Das geht entweder über's Hauptmenü

über das kleine DropDown-Menü in der Toolbar (zweite von links)

oder im Kontextmenü unseres Projekts im Projektfenster

Wir wählen im anschließenden Dialog jeweils "New/Neu" aus und geben dem Modul gleich einen passenden Namen (Eigenschaften/Properties), "Allgemein" (später speichern wir es auch unter diesem Namen ab). Jetzt können wir einfach per Cut&Paste unser Unterprogramm "Verzoegerung" aus "Hauptform" nach "Allgemein" verschieben.

Wenn wir unser Programm jetzt laufen lassen, hat sich am Ablauf nichts geändert, das Programm springt automatisch in das Modul "Allgemein" und macht anschließend an der alten Stelle in der aufrufenden Prozedur weiter.

Beispielprojekt laden

Wenn wir schon am Aufräumen sind, wollen wir auch gleich noch unsere kleine Animation in ein eigenes Unterprogramm auslagern. Das hat den Vorteil, daß wir sie auch zu einem späteren Zeitpunkt als kleinen Pausenfüller aufrufen können.

Wir definieren also ein neues Unterprogramm "KugelSpring" und lagern die Animation dorthin aus. Da diese Animation in dieser Form nur in der Hauptform nutzbar und sinnvoll ist, plazieren wir unser Unterprogramm auch in diesem Modul. Unser Modul "Hauptform" sieht dann so aus:

    Private Sub Form_Activate()
      KugelSpring
      CurrentX = 1000      'positioniert den nachfolgenden Printbefehl X-Achse
      CurrentY = 2000      'positioniert den nachfolgenden Printbefehl Y-Achse
      Print "Viel Spaß mit Mathe-Max!"  'druckt Text direkt auf die Form
    End Sub

    Sub KugelSpring()
      For k = 1 To 5      'äußere Schleife

        For i = 1 To 20
        'erste innere Schleife, Kugel bewegt sich nach rechts unten
            Kugel.Move Kugel.Left + 3 * i, Kugel.Top + 20 * i / k
            Verzoegerung 0.005
        Next

        For i = 1 To 20
        'zweite innere Schleife, Kugel bewegt sich nach rechts oben
            Kugel.Move Kugel.Left + 3 * i, Kugel.Top - 20 * i / (k + 1)
            Verzoegerung 0.005
        Next
      Next

      For i = 1 To 20
      'abschließende separate Schleife, Kugel bewegt sich ein letztes Mal nach unten
          Kugel.Move Kugel.Left + i, Kugel.Top + 20 * i / k
          Verzoegerung 0.005
      Next
    End Sub
 

Beispielprojekt laden

zurück Index weiter


© Copyright 1998-2000 J.Behling EMail schreiben ABC-Ware's Homepage
Weitergabe und Druck (auch in Teilen, mit Ausnahme von Privatgebrauch) ohne ausdrückliche Genehmigung der Autorin untersagt.