[SOUNDLIGHT] VISUAL BASIC CRASHKURS III
Projekt 3: Eine Maussteuerung für die Scanner-Steuerung

Sie haben Visual Basic 3.0 auf Ihrem Rechner installiert? Die beiden bisherigen Teile, Kursprojekt 1 und Kursprojekt 2 installiert und abgearbeitet? Prima. Dann können wir loslegen:

Gehen Sie auf DATEI und dann auf Projekt laden und laden Sie aus dem Verzeichnis C:\VB\SLH das Projekt PAD6_E.
Sie erhalten dann den oben dargestellten Arbeitsbildschirm und im Projektfenster werden zwei Dateien eingetragen, nämlich


Eine Maussteuerung für das Pult

Wer nicht nur Licht, sondern auch bewgte Scheinwerfer (sog. Moving Lites) mit seinem Pult steuern möchte, der wird die Bewegung der Ablenkung (Spiegelbewegung) natürlich nicht über Schieberegler, sondern vielleicht mit der Maus machen wollen.

Kein Problem, denn eine Mausabfrage bietet Windows uns sozusagen frei Haus an. Wir richten eine Mausfläche ein, die wir mit dem Tool [Delphi] erstellen - klicken und aufziehen. Klicken Sie den soeben erstellten Rahmen an, öffnen Sie mit F4 das Eigenschaftsfenster und stellen Sie hier folgende Eigenschaften ein:
Height = 2000
Width = 2200

So sieht nun die Oberfläche aus:

[Delphi] Pult mit Mauspad

Doppelklicken Sie nun auf das neu geschaffene "Mauspad", um ein Codefenster zu erhalten. Dieses Codefenster werden wir Code für die Events MOUSE DOWN, MOUSE MOVE und MOUSE UP schreiben.

[Delphi] Die Mouse-Events: drücken, bewegen, loslassen

Was passieren soll

Zwei Fader, nämlich Kanal 5 und 6 (entsprechend Fader(4) bzw. Fader(5)) sollen automatisch nachgestellt werden, wenn die Maus das Mauspad überfährt. Dazu benötigen wir lediglich das MouseMove-Ereignis. Klicken sie es an und schreiben Sie in das Codefenster:

        If x > 0 And x < 2200 Then
            Fader(4).Value = Int(x / 22 + .5)
            Call Fader_Change(0)
        End If

x ist die horizontale Mausposition. Die durch die IF-Abfrage bedingte Bereichsbegrenzung verhindert dabei, daß für den Fader Werte unter 0 oder über 100 geschrieben werden, was natürlich zu einer Bereichsüberschreitung und damit zu einem Fehler führen würde.

Schreiben Sie nun entsprechenden Code für die Y-Position an, wobei Sie darauf achten sollten, daß die Höhe 2000 beträgt. Entsprechend müßte der Code lauten:

        If y > 0 And y < 2000 Then
            Fader(5).Value = Int(y / 20 + .5)
            Call Fader_Change(1)
        End If

Das war's eigentlich auch schon - so schnell kann eine Lektion zu Ende sein. Natürlich gibt es hier noch so einiges zu verbessern, aber das wollen wir Ihnen mal sozusagen als "Hausaufgabe" belassen.
Insbesondere:


[Delphi] Viel Schweiß, viel Preis. Senden Sie uns Ihre Form, die diese Aufgaben löst. Für die schönste Umsetzung, die uns bis Weihnachten erreicht, spendieren wir "Dumm, Dreist, Bekloppt - 300 Programme, die kein Mensch braucht. Eine ARI PD/Shareware CD-ROM.


Projekt-Quellcode laden

Erstellen Sie auf Ihrer Festplatte im Visual Basic Ordner ein Verzeichnis namens C:\VB\SLH. Laden Sie die Datei PROJ3.EXE in dies Verzeichnis und starten Sie sie dort. Es entpacken sich dann unter anderem folgende Dateien:
  1. PAD6_E.MAK
  2. PAD6_E.FRM
  3. PAD6_E.FRX
  4. DEMOS.BAS
  5. SLHDMX2.DLL
  6. SLHDMX12.BIN
  7. SLHDMX16.BIN
Einige dieser Dateien könnten durch vorherige Beispiele schon auf Ihrer Festplatte vorhanden sein. Sie können sie überschreiben.

[OPEN] Projekt-Sourcecode downloaden





zurück zur [HOME]SOUNDLIGHT HOMEPAGE