Форум: "Основная";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];
ВнизЧекбокс Найти похожие ветки
← →
_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 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c