is-Logo Taschenlampe V. 1.0
Prototyp   -   Klassen verbinden

S. Spolwig
 

[Home | Unterrichtssequenzen]
Startseite

Ziele:
GUI mit Fachklasse verbinden

Informationen
zur Vertiefung

 

 

 

=======>
Botschaften
<=======

Das Zusammenspiel der beiden Klassen über Botschaften wird mit GUI-Methoden organisiert.

 GUI-Klasse und Fachklasse verbinden

Programmiertechnisch sind folgende Schritte in TLampenGUI erforderlich:

  1. Die Fachklasse der GUI bekannt machen und einbinden bei uses ....:  uTaschenlampe;

  2. Ein aktuelles Exemplar für eine Taschenlampe deklarieren bei
     
    var
      LampenGUI   : TLampenGUI;
      Taschenlampe: TTaschenlampe;

  3. - Eine Ereignismethode TLampenGUI.FormCreate (Sender: TObject) erzeugen durch
       Doppelklick auf eine leere Formularstelle.

    - Aktuelles Exemplar der Taschenlampe erzeugen in dieser Prozedur.

    procedure TLampenGUI.FormCreate(Sender: TObject);
    // ----------------------------------------------
    begin
      Taschenlampe := TTaschenlampe.Create;
    end;

     

  4. Den Schalter implementieren mit Doppelklick auf die UpDown-Komponente und codieren

    1. procedure TLampenGUI.SchalterUpDownClick(Sender: TObject; Button: TUDBtnType);
      // ----------------------------------------------------------------
      begin
        if (SchalterUpDown.Position >= 1)
        then
          begin
            Taschenlampe.Einschalten; // leuchtet oder auch nicht
            SchalterUpDown.Position := 0
          end
        else Taschenlampe.Ausschalten;

        Darstellen (Taschenlampe);    // Aufruf der Darstellen-Prozedur

      end;

    2. Die Prozedur zum Darstellen selbst komplett von Hand schreiben

      Procedure TLampenGUI.Darstellen(TLa: TTaschenlampe);
      // ------------------------------------------------------------------
      begin
        If TLa.Leuchtet = true
        Then LampenShp.brush.color := clyellow
        else LampenShp.brush.color := clBlack;
      end;

     

 



Das Zusammenspiel der Objekte
LampenGUI und Taschenlampe zeigt das Sequenzdiagramm.

Der Benutzer klickt auf den Schalter.
Die UpDownClick-Methode sendet die Botschaften Einschalten und Leuchtet? an Taschenlampe.
Wenn die Rückmeldung true ist, führt LampenGUI das Darstellen mit gelbem Licht aus.

Mit Sequenzdiagrammen lassen sich zeitliche Abläufe von Botschaften über mehrere Objekte darstellen.


   Sequenzdiagramm: Taschenlampe einschalten

Das war 's! - Einschalten und leuchten - es werde Licht!

 

 

 

 

 

 

 

MVC-Konzept

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

s. Delphi-Hilfe-System

 

 

 

 

 

 

 

 

 

 

 

 

Sequenz-diagramme

 

©  04. Oktober 2008    Siegfried Spolwig

page_top