[ aca andrijevic @ 09.10.2013. 10:26 ] @
Moze li da mi neko da pojasnjene zasto kada se na primer property CheckBox-a u pokazivanju neke forme
(runtime) stavi na true, okida event za click istog?Dok na primer kada u design-u stavim taj property na true
ponasa se normalno kako treba.

Primer:

Code (delphi):

procedure TfrmMain.FormShow(Sender: TObject);
begin
    CheckBox1.Checked := true;
end;

procedure TfrmMain.CheckBox1Click(Sender: TObject);
begin
    ShowMessage('Si senor!');
end;

 


[ Rapaic Rajko @ 09.10.2013. 11:52 ] @
Zato sto je tako dizajniran komponent. U designtime-u se komponent ponasa na jedan nacin, u runtime-u na drugi.

Tvoj problem je sto setter metoda za property Checked okida event OnClick. Moguce resenje je na primer ovo:

Code:

procedure TfrmMain.FormShow(Sender: TObject);
begin
    CheckBox1.OnClick := nil;         // otkacimo event
    CheckBox1.Checked := true;
    CheckBox1.OnClick := CheckBox1Click; // ponovo zakacimo
end;

procedure TfrmMain.CheckBox1Click(Sender: TObject);
begin
    ShowMessage('Si senor!');
end;


Pozz
[ aca andrijevic @ 09.10.2013. 12:59 ] @
Plasio sam se da je to tako.Nije mi trenutno neophodno jer sam problem resio na drugi nacin, nego sam
se jednostavno pitao zasto je tako napravljeno, mada mi nema uopste smisla.Pozdrav.
[ Rapaic Rajko @ 09.10.2013. 14:39 ] @
Vecina standardnih kontrola u Delphi-ju su samo wrapper-i za Win kontrole. Prema tome, cudno ponasanje ide na dusu M$, a ne Borlandu...

Pozz