Einzelnen Beitrag anzeigen

mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#11

Re: OOP Problem: änderungen werden nicht übernommen

  Alt 25. Dez 2005, 22:02
Vielen dank für den versuch mir das interfase verständlich zu erklären. Aber ich finde ein interfase würde sich doch für eine funktion garnicht lohnen. dann müsten da auch variabln und sowas rein kommen.

Was klassen sind weiß ich inzwischen. Sie enthalten ein Bauplan nach diesem plan wird diese klase aufgabaut. Bis auf das interfase habe ich alles verstanden.
das würde ja beudeten das ich dem interface alles gebe was das standart objekt haben soll z.b.

eine Lösch procedure
eine Hinzufüge procedure
eine Draw Procedure
onDraw
onAdd
onDel

die standart klasse also die 1. klasse von der alles gerebt werden muss würde dann die oben genanten funtkion enthalten und dann ihre eigenen wie z.b. Namen, Caption, X,Y,W,H und sowas.
Ich muss sie auch nicht mehr defnieren wenn ich die klasse so erstelle:
TStdObj = class(IInter) // TInter ist mal das interface

und dieser klasse kann ich also noch weiter variabeln/Funktionen/Proceduren/Ereignise hinzufügen.
Wenn ich das so machen wollte wie in Delphi d.h.
Delphi-Quellcode:
var
  b:TButton;
begin
  b:=TButton.Create
  b.Name
  b.Top
end;
werden ja die änderungen übernommen weil name eine eigenschaft ist wie bekomme ich das auch hin.
(Das war die eigentliche Frage*G*)
Aber das beispiel mit den Tieren war auch nicht schlecht in den meisten beispieln geht es um Autos.
Müste dann bei den Aurufe von Create auch alles in eine liste hinzugefügt werden oder kann ich das anderes lösen und beim zeichnen ?

Aber eins hat mir dein Text verständlich gemacht: das Formular ist die wichtiges Klasse bei Komponenten d.h. wenn kein Form erstellt wurde dann sollen auch keine komponenten installisiert werden.

Gemeinsame funktionen währen ja die alle komponenten haben sollen die der GUI angehöhren z.b. alle Edit, Button, Label, Menus, Listenboxen und soweiter müsten also diese eigenschaften haben:
- Namen, Caption
- x,y,w,h,tag(sollte ein array evlt. sein),ax,ay
- Parent(ist der wichtig ?)
- Destroy, Create, Draw

Wie geht es jetzt weiter ?
das Fenster muss also diese eigenschaften haben aber noch weitere wie z.b.
die Titel Position und Titel Größe, Farbe und sowas halt.
Sollen Scrollbalken angezeigt werden ?
Soll die Größe automatisch berechnet werden ?
Soll die position in der Mitte des Desktops sein ?
und sowas.
ich habe z.b. ein Formular und ein Button.
beide stammen von StdObj ab und haben eine standart Draw funktion die auch ausgeführt werden sollte. Es muss ein rechteck gezeichnet werden in beiden fällen. Aber in ein Form muss ja noch ein line weiter oben gezeichnet werden als Titel(richtig ?) d.h. ich brauche für das Fenster auch eine eigene Draw funktion geht das überhaupt ?
ich möchte das erst die standart funktion aufgerufen wird und sofern vorhanden die eigene die beim Form dabei sind denn beim Button brauche ich keine eigene Draw funktion.
Weißt du was ich meine ?

Vielen Dank für deine Mühe mir bei diesem schwirigen Problem zu Helfen.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat