Delphi Komponenten freie Komponenten Konsolenanwendungen Styleguide Ereignisse Threads
Pfad: Startseite / Fächer / Informatik / Material / Delphi / Komponenten
Autor: mk
12.10.2003 17:14
14727
Komponenten

Eigene Komponenten ableiten, 1

1. Unit mit neuem Typ und Registrierungsprozedur schreiben
unit ukomp1;
interface
{ 1. richtige Units für zu beerbende Komponente angeben }
uses
  stdctrls { für tedit } , classes { für registerComponents };
{ 2. Typvereinbarung mit Erben von bestehender Komponente }
type
  tMyEdit = class(tcustomedit) { hier noch eine exakte Kopie          }
            end;               { tedit und tcustomedit probieren, was }
                               { ist im Objektinspektor anders ?      }
{ 3. Registrierungsprozedur }
procedure Register;         { ACHTUNG: Register GENAUSO schreiben !!! }

implementation

{ 4. Implementierung der Registrierungsprozedur }
procedure Register;
begin
  registerComponents('Beispiele',[tMyEdit]);
  { der erste Parameter wählt eine bestehende Karteikarte aus oder
    erzeugt eine neue, der zweite Parameter ist eine Menge (in
    eckigen Klammern), die die Namen der neuen Typen durch Komma
    getrennt enthält }
end;

end.
2. optional: eigenes Icon erzeugen 3. neue Komponente einbinden

Aufgabe 1:

Führe die angegebenen Schritte durch und teste die neue Komponente in einem Projekt.

Eigene Komponenten ableiten, 2

4. Komponente verändern 5. Komponente entfernen 6. Icon ändern 7. Komponenteleiste verändern 8. Eigenschaften im Objektinspektor sichtbar machen
.............
type
  tMyEdit = class(tcustomedit) { tCustomEdit hat Eigenschaften ausge- }
            property text;     { blendet, einblenden wie nebenstehend }
            end;
9. Eigene Eigenschaften definieren
type
  tMyEdit = class(tcustomedit)
            private
              Fzahl : integer;
            published
              property zahl : integer read Fzahl write Fzahl;
            end;

Aufgabe 2:

Probiere die neuen Möglichkeiten aus. Erweitere insbesondere deine neue Komponente um eine neue (möglichst sinnvolle) Eigenschaft mit Set.. und Get.. .

Aufgabe 3:

Baue dir ausgehend von tImage eine eigene Grafik-Komponente und teste sie.