Witam
Mam pewien problem. Mam kilka obiektów które dziedziczą po tej samej klasie, obiekty dodatkowo maja dwie nowe funkcje, a w programie jest button i combobox i zależnie od wyboru użytkownika jest tworzony obiekt po naciśnięciu przycisku. Jak dla mnie metoda nie jest idealna. Obrazując w dużym skrócie:
TBase = class
public
function Base: Boolean;
end;
TObject1 = class (TBase)
public
iWynik: Integer;
procedure Test1(iInput: Integer);
procedure Test2(iInput: Integer);
end;
TObject1 = class (TBase)
public
iWynik: Integer;
procedure Test1(iInput: Integer);
procedure Test2(iInput: Integer);
end;
procedure TObject1.Test1(iInput: Integer);
begin
iWynik := iInput * 2 + iInput div 4;
end;
procedure TObject1.Test2(iInput: Integer);
begin
iWynik := iInput + 100;
end;
procedure TObject2.Test1(iInput: Integer);
begin
iWynik := iInput shl 4 + 3;
end;
procedure TObject2.Test2(iInput: Integer);
begin
iWynik := iInput div 3;
end;
procedure TfrmMain.Button1(Sender: TObject)
begin
case combobox1.itemIndex of
0:
begin
if not Assigned(Object1) then
Object1 := TObject1.Create;
Object1.Test1(StrToInt(Edit1.Text));
Object1.Test2(123);
Object1.Base;
end;
1:
begin
if not Assigned(Object2) then
Object2 := TObject2.Create;
Object2.Test1(StrToInt(Edit1.Text));
Object2.Test2(123);
Object2.Base;
end;
end;
end;
Oczywiście tych obiektów jest więcej.
Ma ktoś pomysł jak to inaczej rozwiązać?