Projekt mit
1 €
unterstützen?
So geht das *:


Step 08 - Objektorientierte Programmierung am Beispiel einiger Delphi-Objekte:

Hier möchte ich euch in die Objektorientierte Programmierung einführen. Dazu zeige ich einige Objekte und deren Eigenschaften als Beispiel.

Durch die objektorientierte Programmierung ist einiges wesentlich einfacher geworden. Ein Objekt verbindet mehrere Eigenschaften, Methoden und Ereignismethoden. Eigenschaften bestimmen ein Objekt genauer. Im Objektispektor ist z.b. die Eigenschaft "Name" für den Namen des Objekts zuständig, durch den auf das Objekt später im Quelltext zugegriffen werden kann. Methoden und Ereignismethoden sind ebenso wichtig: Durch diese kann ein Objekt etwas tun oder auf etwas reagieren. Eine Methode kann z.B. bei einem verschlüsselungsprogramm die Prozedur "Verschluessele" sein. Eine Ereignismethode jedoch ist so definiert, dass auf eine Aktion reagiert wird. Bei einem Button wird z.B. beim OnClick-Ereignis darauf reagiert, dass der Benutzer gerade auf den Button geklickt hat.

Im folgenden werden einige VCL-Objekte und ihre Ereignisse vorgestellt.

TForm:

Eigenschaft Beschreibung Anwendung im Quelltext.
Caption ändert den Titel des Programms.  Caption:='Mein Programm';
BorderStyle Die Art des Fensterrahmens. (bsNone, bsSingle, bsSizeable, ...) = (Kein Rand, Normal und nicht veränderbar, Normal und veränderbar,...) BorderStyle:=bsSingle;
Position Kann bei Turbo Delphi auch rechst unten im Eck (bei Formularansicht) auf eine feste Position geschoben werden. Position:=poScreenCenter;
AutoSize Gibt an, ob das Formular seine größe automatisch anpassen soll oder nicht. AutoSize:=false;
FormStyle Hier kann man einstellen, dass das Formular immer oben sein soll. FormStyle:=fsStayOnTop;
WindowState Startet das Programm maximiert, minimiert oder wird es ganz normal angezeigt?. WindowState:=wsMaximized;
Color Farbe des Formulars. Farben (TColor) fangen meist mit cl an. Einfach mal Cl eingeben und Strg+Leertaste drücken ;)
Dieses Feld ist in fast jeder sichtbaren Komponente vorhanden.
Color:=clSkyblue;
Name ändert den Name des Formulars. Unter diesem Namen z.B. MainForm kann man auf die einzelnen Eigenschaften des Objektes zugreifen. Dieser Name muss wie eine Variable aufgebaut sein. Dieses Feld ist bei jedem Objekt vorhanden. Es kann nicht im Quelltext verändert werden.

TEdit:

Eigenschaft Beschreibung Anwendung im Quelltext.
Text  Inhalt des Edits (String) Text:='asd';
PasswordChar  z.B. Rauten bei Eingabe (Char) PasswordChar:='#'

TButton:

Eigenschaft Beschreibung Anwendung im Quelltext.
Caption Schrift im Button (String) Caption:='asd';
Enabled true => Aktiviert; false => Deaktiviert Enabled:=false;
Visible Sichtbarkeit (Boolean) Visible:=true;
Width Breite in Pixeln (Integer) Wdth:=223;
Height Höhe in Pixeln (Integer) Height:=100;

TLabel:

Eigenschaft Beschreibung Anwendung im Quelltext.
Font Schriftart einstellen (TFont) Font.Name:='Comic Sans MS';
WordWrap Zeilenumbruch (Boolean) Wordwrap:=true;
Autosize Automatische Größenänderung (boolean) Autosize:=false;

Kleines Beispiel:

Füge ein Edit, ein Button und ein Label in dein Formular ein.

  • Ändere den Namen des Buttons in BtnWechseln, sowie der des Edit-Feldes in EdString1; den des Labels in LblString2.
  • Ändere die Farbe des Edits in clSkyBlue
  • Das Formular sollte immer zentriert (Position poScreenCenter) starten und der Maximier-Button soll deaktiviert sein (siehe BorderIcons)
  • Ändere die Schriftart (Font.Name) des Labels in eine, die dir gut gefällt, und ändere ebenfalls die Schrift-Größe (Font.Size)
  • Erstelle die BtnWechselnClick-Prozedur, indem du doppelt auf den Button klickst.
  • Deklariere eine Variablen s vom Typ String.
  • Ordne den Inhalt des Edits der Variable s zu, dann weise den Inhalt des Labels dem Edit zu.
  • Am Ende muss nur noch s dem Caption-Attribut des Labels zugewiesen werden.

So sieht mein Quelltext aus:

procedure TForm1.BtnWechselnClick(Sender: TObject);
var                                            // Variablen-Deklaration
  s : String;
begin
  s                  := EdString1.Text;        // Inhalt von MyLabel in s zwischenspeichern
  EdString1.Text     := LblString2.Caption;    // Inhalt des Labels wird in MyEdit geschrieben
  LblString2.Caption := s;                     // s wird nun noch dem Label zugewiesen.
end;

Funktioniert es???

Ja: Herzlichen Glückwunsch! Du hast ein Programm geschrieben, das zwei Texte vertauscht ;-)

Nein: Dann lese hier die Kommentare oder schreibe dein Problem einfach, falls es noch nicht existiert ;-)


Da das Kommentarmodul dieser Seite zur Zeit neu überarbeitet werden muss, sendet bitte alle Fragen, Anregungen oder Probleme mit Betreff zu welchem Thema es sich handelt an folgende Mailadresse:



www.marco-hetzel.de
www.delphi-lernen.de
www.lazarus-lernen.de

© 2006-2019 by Marco Hetzel , last modified 01.11.2018, 11:28

(* Unterstützung dient der Aufrechthaltung laufender Kosten für dieses Projekt.)