hm, dann haette ich jetzt jedoch noch eine ergaenzungsfrage:
Delphi-Quellcode:
procedure TForm1.ShpStd32ProgMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if ShpStd32Prog.Brush.Color = FarbeInaktiv then ShpStd32Prog.Brush.Color := FarbeAktiv
else ShpStd32Prog.Brush.Color := FarbeInaktiv;
end;
{ **************************************************************************** }
procedure TForm1.ShpStd16ProgMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if ShpStd16Prog.Brush.Color = FarbeInaktiv then ShpStd16Prog.Brush.Color := FarbeAktiv
else ShpStd16Prog.Brush.Color := FarbeInaktiv;
end;
...
habe also meine sagen wir mal 16 shapes. immer, wenn eines angeklickt wird, soll sich die farbe aendern (in FarbeAktiv oder FarbeInaktiv (konstanten) - je nach vorigem status). soweit, so gut. aber wieder viel code, oben sind ja nur 2 beispiele als ausschnitt.
es waere schoen, wenn ich bei jedem klick auf ein shape auf die selbe ereignismethode verweisen koennte im objektinspektor. dazu muesste aber im code der bezeichnername der jeweiligen shape-komponente, die ich angeklickt habe, ausgelesen werden, damit die richtige shape ihre farbe aendert.
also: wie kann man beim klick auf eine komponente ihren eigenen namen als string auslesen? und das auch, wenn ich beim klick auf verschiedene shapes auf stets ein und dieselbe ereignismethode verweise?
moechte es mit findcomponent loesen, wenn moeglch. ist die loesung irgendetwas mit "self"? kenne mich nicht genug aus.
danke erneut im voraus,
ciao,
ltmick.