Results 1 to 4 of 4

Thread: Doorgeven componenten in procedure

  1. #1

    Doorgeven componenten in procedure

    Hallo,

    Ik heb een form met verschillende DateTimePicker componeten en ook met DBCheckbox componenten.

    Om mijn code te vereenvoudigen zou ik een procedure maken die telkens wordt opgeroepen.
    In die procedure die in een aparte unit zit, moet ik de componenten kunnen bewerken.

    Hoe moet ik de procedure aanmaken, en hoe moet ik deze aanroepen?

    Iets in de aard van "Procedure xxx(DateTimePicker, Checkbox)"


    Alvast bedankt

    Lainkes

  2. #2
    Bedoel je zoiets?
    Code:
    procedure TForm1.DoeIets(ADateTimePicker: TDateTimePicker; ACheckbox: TCheckBox);
    begin
      if Assigned(ADateTimePicker) then
        ADateTimePicker.Width := 400;
    
      if Assigned(ACheckbox) then
        ACheckbox.Checked := True;
    end;

  3. #3
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Of je laat de procedure al het werk doen in het bepalen wat er gedaan moet worden met de opgegeven control(s); een kort voorbeeldje:
    Delphi Code:
    1. procedure HandleControls(const AControls: TArray<TControl>);
    2. var
    3.   oControl: TControl;
    4. begin
    5.   for oControl in AControls do
    6.     if oControl is TDateTimePicker then
    7.       TDateTimePicker(oControl).DateTime := Now
    8.     else
    9.     if oControl is TCheckBox then
    10.       TCheckBox(oControl).Checked := not TCheckBox(oControl).Checked
    11.     else
    12.       oControl.Enabled := oControl.Enabled;
    13. end;
    14.  
    15. procedure TForm1.FormCreate(Sender: TObject);
    16. begin
    17.   HandleControls([DateTimePicker1, CheckBox1, Self]); // "Self" is hier natuurlijk de eigen instance van TForm1
    18. end;
    TMemoryLeak.Create(Nil);

  4. #4
    Bedankt voor jullie feedback.
    Ik heb de dingen getest, en het lijkt te werken.
    Weer iets bijgeleerd om het programmeren overzichtelijker en gebruiksvriendelijker te maken.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •