"Steffen V Petersen" <news01@swipe.remove.dk> wrote:
>Hej Gruppe
>
>Jeg sad og tænkte på, om det er ikke muligt at steppe gennem ex alle
>checkbokses for at finde ud af hvilke der er krydset af?
>
Hej Steffen
Hvis jeg forstår dig rigtig, så går det på at løbe alle componenter på en Form
igennem, finde ud af hvad type componenten er og så gøre et eller andet ved
componenten hvis det er den rigtige type?
Jeg går også ud fra at det er en eller anden version af Delphi du spørger om.
TForm har en del Properties til at håndtere alle Componenter ejet af den:
ComponentCount: Integer;
ComponentIndex: Integer;
Components[Index: Integer]: TComponent;
Og TForm har også en enkelt Method til Component håndtering:
FindComponent(const AName: string): TComponent;
Det der så skal bruges er noget som dette eksempel fra hjælpen:
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
for I := 0 to ComponentCount -1 do
if Components[I] is TButton then
TButton(Components[I]).Font.Name := 'Courier';
Edit1.Text := IntToStr(ComponentCount) + ' components';
end;
Der er et par ting der kan hjælpe med at udgå problemer når man har fat i disse
lidt dybere liggende ting i Delphi.
Der er Is sætningen som er brugt i ovenstående eksempel som bruges til at checke
hvad for en Component eller ComponetClass man har med at gøre (søg på "Is
operator" i hjælpen).
Og der er As operator'en som er brugt til "sikre typecast", tit sammen med With:
with Sender as TButton do
begin
Caption := '&Ok';
OnClick := OkClick;
end;
Også her kan søgning efter "As operator" i hjælpen give hele forklaringen, og
måske nogle relaterede ting omkring brugen.
Det blev en lidt lang artikkel, så jeg håber det kan bruges
--
Med venlig hilsen, Ove Kjeldgaard
Natur og Friluftsliv: <
http://hiker.dk>
Seneste opdatering: 1. december 2002