Текущий архив: 2005.01.02;
Скачать: CL | DM;
Вниз
Какой параметр передавать в теле процедуры? Найти похожие ветки
← →
Guitar © (2004-12-20 11:28) [0]Мастера, подскажите, плс. Как правильно вызвать процедуру? Я вызываю не правильно, так как она не вызывается.
Хочу вызвать вот эту процедуру:procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if radiogroup8.ItemIndex=1 then begin
{Здесь код}
end;
end;
Вызываю таким образомif radiogroup8.ItemIndex=1 then begin
CheckBox1Click(sender);
end;
Где ошибка? ((( Может не тот параметр передаю?
← →
TUser © (2004-12-20 11:33) [1]Надо передавать любой объект типа. Если в CheckBox1Click этот Sender никак не используется - можно nil. Если вызов прописан в обработчике к-л события, то можно и просто Sender написать - он там есть и типа TObject.
Вопрос - а как ты определил, что процедура не вызывается?
← →
Семен Сорокин © (2004-12-20 11:35) [2]CheckBox1.Click;
CheckBox1Click(CheckBox1);
← →
Guitar © (2004-12-20 12:58) [3]Скажите пожалуйста, что значит, когда я передаю процедуре такой параметр как sender?
CheckBox1Click(sender);
Что он (sender) означает? Почему если его не написать, то выводит ошибку?
← →
Digitman © (2004-12-20 13:07) [4]
> Что он (sender) означает?
этот параметр означает ссылку на объект, который возбудил событие.
> Почему если его не написать, то выводит ошибку?
потому что если прототип процедуры-обработчика события требует указания ссылки на объект, то ты обязан сослаться либо на реально существующий объект-генератор события либо указать nil.
← →
TUser © (2004-12-20 13:09) [5]
> Что он (sender) означает?
Обычно передают там, кто вызвал данное события (это может быть надо, если один обработчик назначен собыватим для нескольких чекбоксов).
> Почему если его не написать, то выводит ошибку?
Потому, что процедуру надо вызывать с теми параметрами, с которыми она описана.
Страницы: 1 вся ветка
Текущий архив: 2005.01.02;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.032 c