|
[Home
| Programmiersprachen |
Delphi] |
unit uFenster;
// **********************************************************************
(* K L A S S E : FENSTER *)
(* -------------------------------------------------------------------- *)
(* Version : 1.1 *)
(* Autor : (c) Siegfried Spolwig, OSZ Handel, 10997 *)
(* *)
(* Aufgabe : Veranschaulichung des Datenflusses bei M-V-C *)
(* selbstgeschriebene Eventbehandlung *)
(* Compiler : DELPHI 7.0 *)
(* Aenderung : V. 1.0 - 28-AUG-98 *)
(* 1.1 - 05-OKT-04 *)
// **********************************************************************
interface
// ======================================================================
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, Buttons,
uPerson;
type
TFensterFrm = class(TForm)
GroesseLbl : TLabel;
GroesseEdt : TEdit;
GewichtLbl : TLabel;
GewichtEdt : TEdit;
BMILbl : TLabel;
BmiEdt : TEdit;
NameEdt : TEdit;
NameLbl : TLabel;
SteuerPnl : TPanel;
updModelBtn: TButton;
EndeBtn : TButton;
AbnehmBtn : TButton;
procedure updModelBtnClick (Sender: TObject);
procedure FormCreate (Sender: TObject);
procedure EndeBtnClick(Sender: TObject);
procedure AbnehmBtnClick(Sender: TObject);
private
Person : TPerson; // --- Model PERSON
procedure Init;
procedure DatenAktualisieren; // --- hier der Datentransport
procedure MaskeAktualisieren;
public
end;
var
FensterFrm: TFensterFrm; // --- GUI
implementation
{$R *.DFM}
// ======================================================================
procedure TFensterFrm.FormCreate(Sender: TObject);
// ----------------------------------------------------------------------
begin
FensterFrm.Init;
Person := TPerson.Create;
Person.OnChanged := MaskeAktualisieren; // Methodenzeiger mit Methode verknüpfen
end;
procedure TFensterFrm.Init;
// ----------------------------------------------------------------------
begin
NameEdt.Text := '';
GroesseEdt.Text := '';
GewichtEdt.Text := '';
BmiEdt.Text := '';
end;
procedure TFensterFrm.DatenAktualisieren;
// ----------------------------------------------------------------------
begin
Person.SetName (NameEdt.Text);
Person.SetGroesse (StrToFloat(GroesseEdt.Text));
Person.SetGewicht (StrToFloat (GewichtEdt.Text));
end;
procedure TFensterFrm.updModelBtnClick(Sender: TObject);
// ----------------------------------------------------------------------
begin
DatenAktualisieren;
// Init;
end;
procedure TFensterFrm.MaskeAktualisieren;
// ----------------------------------------------------------------------
begin
NameEdt.Text := Person.GetName;
// GroesseEdt.Text := FloatToStr (Person.GetGroesse); // Laufzeitfehler
// GewichtEdt.Text := FloatToStr (Person.GetGewicht);
BmiEdt.Text := FloatToStr (Person.HatBMI);
end;
procedure TFensterFrm.AbnehmBtnClick(Sender: TObject);
// ----------------------------------------------------------------------
begin
Person.Abnehmen;
end;
procedure TFensterFrm.EndeBtnClick(Sender: TObject);
// -----------------------------------------------------------------------
begin
Close;
end;
end. // ------ UNIT -------
|
|
© 04. Oktober 2008 Siegfried Spolwig |
|