![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ко такое? Вопрос покажется странным, но не знаю, как назначить пр [D7, WinXP]
Antoxa2005 © (2007-01-09 03:37:00)Подскадите пожалуйста, как назначить процедуру программно, т.е.:
есть процедура
procedure MessageShow;
Begin
ShowMessage('Выполнено');
end;
и есть кнопка Button1, как программно назначить на Button1.OnClick выполнение процедуры MessageShow?
Antoxa2005 (2007-01-09 10:51:00) [1]Всем спасибо!
Германн (2007-01-09 05:39:00) [2]
> Palladin © (09.01.07 04:18) [6]
>
> "ничего" "переместить" "никуда" я не могу и даже ЮЗ не может
> :)
> а вот от прав на начинающим я бы не отказался... спам исчезал
> бы активней...
Про ЮЗ не будем трепаться! Не тот уровень, согласись. А вот насчёт спама, тут не мешало бы что-то сделать дополнительно. Что именно я не знаю.
Джо (2007-01-09 05:38:00) [3]>
> а вот от прав на начинающим я бы не отказался... спам исчезал
> бы активней...
Сообразим на двоих? ;)
Palladin (2007-01-09 04:18:00) [4]"ничего" "переместить" "никуда" я не могу и даже ЮЗ не может :)
а вот от прав на начинающим я бы не отказался... спам исчезал бы активней...
Германн (2007-01-09 04:09:00) [5]
> Palladin © (09.01.07 03:48) [4]
>
> Клянусь, я не намеренно :) просто написал ответ, перенес
> из основной и запостил :)
>
Ну да, мы ведь простые смертные и не можем "ничего" "переместить" "никуда"! :)
Palladin (2007-01-09 03:48:00) [6]Клянусь, я не намеренно :) просто написал ответ, перенес из основной и запостил :)
Джо (2007-01-09 03:45:00) [7]> [2] Джо © (09.01.07 03:44)
> следующее: Button1.OnClick := TSomeObject.MessageShow.
Button1.OnClick := SomeObject.MessageShow.
И опять меня Палладин опередил :)
Джо (2007-01-09 03:44:00) [8]Процедура MessageShow должна, во-первых, быть методом объекта, а, во-вторых, иметь соответствующий список формальных параметров, т.е., (Sender: TObject). Тогда программно можно будет написать следующее: Button1.OnClick := TSomeObject.MessageShow.
Palladin (2007-01-09 03:43:00) [9]Как ты мог заметить если бы исследовал справку на предмет
TButton.OnClickэто свойство имеет тип TNotifyEvent, который в свою очередь является
procedure (Sender:TObject) of Object;
что в свою очередь означает, что назначаемое должно являтся методом объекта и выглядеть как:
Procedure <SomeObject>.MyClickEvent(Sender:TObject);
вот когда ты в каком нибудь классе объявишь подобное, потом еще и реализуешь, то что бы осуществить твою мечту тебе останется лишь присвоить событие
Button1.OnClick:=<SomeObject>.MyClickEvent;
а потом кликать до потери пулься и наслаждаться результатом