Einzelnen Beitrag anzeigen

DelphiNoob1.0

Registriert seit: 23. Okt 2012
Ort: Berlin
13 Beiträge
 
Delphi 6 Personal
 
#1

OOP Variablen übergeben.

  Alt 8. Okt 2014, 18:47
Hey In der Schule ist grade OBjektorientiertes Arbeiten dran, aber bis jetzt stande ich noch nicht vor dem Problem eine Variable zu übergeben, also wir hatten das schon mal mit Property, aber bei einem anderen Prjekt.. Egal naja ich bin voll überfordert grade!

Also mein Problem ist ich habe eine Klasse TAussehen (Unit3) Nun möchte ich Variablen aus der Unit2 an TAussehen übergeben und ein Shape1 in Unit1 mit diesen Variablen anpassen.


Beim Buttonklick auf Form2 (die einstellungen für das aussehen!
Code:
procedure TForm2.Button1Click(Sender: TObject);

begin

set4(stylebox1.text); // probiert mit procedure zu übergeben, hab // aber keine Ahnung wass ich davor schreiben soll. //TIrgendwas.set4 usw.

set2(colorbox1.Color);

set3(colorbox2.Color);

set1(strtoint(LabeledEdit1.text))



end;
Dann in Unit3

Code:
unit Unit3;

interface
uses Graphics;
type TAussehen= class(TObject)
 protected
   border_width:integer;
   bordercolor:Tcolor;
   color:Tcolor;
   border_pattern:string;
 public
 procedure set1(bw:integer);
 procedure set2(bc:TColor);
 procedure set3(clr:TColor);
 procedure set4(bp:string);
 end;
implementation
 procedure Taussehen.set1;
 begin
 border_width:=bw;
 end;
 procedure Taussehen.set2;
 begin
 bordercolor:=bc;
 end;
 procedure Taussehen.set3;
 begin
 color:=clr;
 end;
 procedure Taussehen.set4;
 begin
 border_pattern:=bp;
 end;
und schließlich die Neuen Variablen an Unit1 übergeben

Code:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form1.shape1.pen.width:=border_width;
if border_pattern = 'gepunktet' then
 shape1.pen.style:=psDot
 else if border_pattern = 'gestrichelt' then
 shape1.pen.style:=psDash
 else if border_pattern = 'punkt-strich' then
 shape1.pen.style:=psDashDot
 else if border_pattern = 'punkt-punkt-strich' then
 shape1.pen.style:=psDashDotDot
 else if border_pattern = 'solid' then
 shape1.pen.style:=psSolid
 else if border_pattern = 'keinen Rahmen' then
 shape1.pen.style:=psClear
Und alles so das es auch so nach dem Prinzip der Objektorientiereung "SICHER" ist.


Danke für eure Hilfe

Ach und ja also später kommt noch die Position und Größe des Objektes aus Unit 4 dazu, dazu gibt es Button auf Form1, die dann mit einer Procedur das ding vergrßert, also width und height ändert, aber das würde ich dann alleine hinkriegen glaub ich mal ^^.
  Mit Zitat antworten Zitat