Possible not the cleanest, but could you not just clear and reset the event handler while changing the state?
 
Something like:
 
function ChangeCheckBoxStateWithoutOnClick(Item: TCheckBox; NewState: Boolean);
var
    OldOnClick: TNotifyEvent;
begin
    OldOnClick := Item.OnClick;
    try
        Item.OnClick := nil;
 
        Item.Checked := NewState;
    finally
        Item.OnClick := OldOnClick;
    end;
end;
 
HTH,
 
Conor
-----Original Message-----
From: Paul Mckenzie [mailto:[EMAIL PROTECTED]]
Sent: Monday, 11 November 2002 12:55 p.m.
To: Multiple recipients of list delphi
Subject: Re: [DUG]: Check-boxes

Thanks - it sets the checked "look", but it doesn't set the checked state.
Regards
Paul McKenzie
Analyst Programmer
SMSS ltd.
 
----- Original Message -----
Sent: Monday, November 11, 2002 12:33 PM
Subject: RE: [DUG]: Check-boxes

try
  CheckBox1.Perform(BM_SETCHECK, BST_CHECKED, 0);
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Paul Mckenzie
Sent: Monday, 11 November 2002 12:29 PM
To: Multiple recipients of list delphi
Subject: [DUG]: Check-boxes

Anyone know how to Set/Unset a check-box without its Click event being triggered...
Changing "Checked", or "Status" seemd to call the onClick.
 
I can do it by creating a new type of check-box - but is there an easy way ?
 
 
Regards
Paul McKenzie
Analyst Programmer
SMSS ltd.
 

Reply via email to