Вниз
Скачать: CL | DM;

Чекбокс   Найти похожие ветки 

← →
_MAD_ ©   (2003-09-02 15:56) [0]

всем привет.
у меня такая вот проблема у меня в программе при старте происходит считывание разных параметров а потом судя по параметрам чекбокс чекается или остается анчект. но проблема в том что у этих чекбоксов есть событие он клик и по неизвесной причине когда я присваиваю Checked:=true чекбокс начинает выполнять событие онклик помогите как можно запретить ему выполнять это событие пока на него действительно ни кто не кликнет


← →
Skier ©   (2003-09-02 16:01) [1]

SavedOnClick := CheckBox.OnClick;
CheckBox.OnClick := nil;
CheckBox.Checked := True;
CheckBox.OnClick := SavedOnClick;


← →
_MAD_ ©   (2003-09-02 16:16) [2]

спасибо но если можно пару комментариев по первой и второй строчкам


← →
Skier ©   (2003-09-02 16:20) [3]

1. Сохраняем указатель на событие CheckBox.OnClick для последующего
восстановления (var SavedOnClick : TNotifyEvent);
2. Обнуляем указатель на событие. Чтобы в методе TControl.Click проверка
if Assigned(...) давала False и событие не вызывалось.
Посмотри TControl.Click для самообразования...


← →
BOA_KAA ©   (2003-09-02 16:23) [4]

procedure Change(a, b: Integer);
var
c: Integer;
begin
c:=a;
a:=b;
b:=c;
end;

Принцип тот же. Какие могут быть еще коментарии?


← →
_MAD_ ©   (2003-09-02 16:49) [5]

сэнк ю вери мач


← →
Song ©   (2003-09-02 18:21) [6]

BM_SETCHECK


← →
pasha_676 ©   (2003-09-02 18:52) [7]

Обидно что автор вопроса не додумался до очевидного и очень простого решения - управляющего флага. В процедуре инициализации пишешь что то вроде

InitFlag:=true;
/////
тут вся фигня по инициализации
////
InitFlag:=false;

В обработчике смены флага
if InitFlag then Exit;
///
тут вся фигня по смене флага в программе
///



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
1-48505
Evgeniy_K
2003-09-02 17:49
2003.09.15
маленькая альтернатива MessageBox


3-48477
Andrew
2003-08-22 15:21
2003.09.15
Работа с DBF (DBase, FoxPro) , без BDE


7-48801
Poma
2003-06-29 14:54
2003.09.15
Тест поверхности CD


4-48829
jenya_d1
2003-07-15 08:37
2003.09.15
Выбор имени сервера в сети


1-48631
graphmail
2003-09-03 10:09
2003.09.15
Delphi+Excel




   Наверх