Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.09.06;
Скачать: CL | DM;

Вниз

ЗАпук обработчика из другой Формы.   Найти похожие ветки 

 
Neket   (2009-07-05 14:45) [0]

впервые наткнулся на такую проблему. Неисключаю по причине незнания но, ситуаци следующая.
Есть две формы Form1 и Form2.
В Form1 есть вот такой обработчик:
procedure TForm2.CheckBox1Click(Sender: TObject);
begin
If CheckBox1.Checked = true then
                           begin
                           Shape1.Brush.Color:=ClRed;
                           end;

Но кода я в Form2 по событию
procedure TForm5.DBGrid1DblClick(Sender: TObject);
"ставлю галочку" Form2.CheckBox1.Checked:=true;
У меня сразу автоматически срабатывает первый обработчик TForm2.CheckBox1Click
Как такое возможно? Это же CheckBox1CLICK на Клик. И как этого можно избежать?


 
sniknik ©   (2009-07-05 14:54) [1]

когда же ты уже отладчиком научишься пользоваться...

> В Form1 есть вот такой обработчик:
> procedure TForm2.CheckBox1Click(Sender: TObject);

> Как такое возможно?


 
Neket   (2009-07-05 14:55) [2]

ой блин сори я неподправил код.
Вот так правельно:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
If CheckBox1.Checked = true then
                          begin
                          Shape1.Brush.Color:=ClRed;
                          end;

и соответственно
procedure TForm2.DBGrid1DblClick(Sender: TObject);


 
Neket   (2009-07-05 14:57) [3]

Я конечно переписал испоняемый код в Form1 не на событияе OnClick а на CheckBox1MouseUp но всеже интересно как такое возможно?


 
KilkennyCat ©   (2009-07-05 15:48) [4]


> но всеже интересно как такое возможно?

а что в этом невозможного? Просто так сделали, что данное событие вызывается на изменение состояния... Привет от микрософта, скорее всего.


 
sniknik ©   (2009-07-05 15:56) [5]

> Привет от микрософта, скорее всего.
procedure TCustomCheckBox.SetState(Value: TCheckBoxState);
begin
 if FState <> Value then
 begin
   FState := Value;
   if HandleAllocated then
     SendMessage(Handle, BM_SETCHECK, Integer(FState), 0);
   if not ClicksDisabled then Click;
 end;
end;

микрософт привет!


 
Neket   (2009-07-05 15:59) [6]

))) Ну я впринципе так и подозревал. windows mast die )))


 
sniknik ©   (2009-07-05 16:19) [7]

> ))) Ну я впринципе так и подозревал. windows mast die )))
lamers must die. LAMERS!!!


 
KilkennyCat ©   (2009-07-05 17:39) [8]


> sniknik © (05.07.09 15:56) [5]

надо же... а мне вот уже лениво лазить и смотреть... сознавайся, где силы черпаешь?



Страницы: 1 вся ветка

Текущий архив: 2009.09.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
15-1246881220
ford
2009-07-06 15:53
2009.09.06
скопировать заблокированный файл


1-1214219828
Alik
2008-06-23 15:17
2009.09.06
Выделение контура региона


15-1246859821
AlexDan
2009-07-06 09:57
2009.09.06
ещё немного по html..


15-1246023387
Jeer
2009-06-26 17:36
2009.09.06
Отдых IT-шников - какой он ?


1-1213889970
ggg
2008-06-19 19:39
2009.09.06
Отложенное освобождение объектов