Доброе время суток, эксперты! Ещё вопрос, динамически я создаю обьекты, а как для них написать процедуры, например OnClick или OnChange, ведь они появятся только во время работы программы? Если можно, то с примером!
Здравствуйте, DeadShot! Пример из вправки Delphi(не ленись иной раз заглянуть туда): procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin with TEdit.Create(Self) do begin Parent := PageControl1.Pages[i]; Left := Random(PageControl1.ActivePage.ClientWidth - Width); Top := Random(PageControl1.ActivePage.ClientHeight - Height); OnClick:= EditClik; {вот это и есть назначение процедуре OnClick уже существующей процедуры EditClik} end; end; Удачи! Ответ отправлен: 30.07.2002, 02:33 Отправитель: Sanya Отвечает baldr
Доброе время суток, DeadShot! Пиши обработчик заранее и со стандартным заголовком, типа, (Sender:и тп)... То есть, просто процедуру. А потом, присвой событию эту процедуру. то есть: MyObject.OnClick:=MyOnClick; Где: procedure MyOnClick(Sender:TObject); Begin ... End; Естественно, если надо передавать и другие параметры, то опиши их в процедуре...
Ответ отправлен: 30.07.2002, 00:57 Отправитель: baldr Отвечает Vladimir
Здравствуйте, DeadShot!
MyEdit:=TEdit.Create(Form1); MyEdit.Parent:=Form1; MyEdit.OnClick:=Form1.myClick; При клике на MyEdit будет выполняться процедура myClick.
Ответ отправлен: 29.07.2002, 18:58 Отправитель: Vladimir Отвечает Артём Шегеда
Приветствую Вас, DeadShot!
> они появятся только во время работы программы Кто "они"? Процедуры (а точнее, методы класса) - нет, ты их пишешь своими руками, и появляются они ещё до компиляции. Объекты - так кто тебе мешает присваивать полям OnClick или OnChange свои значения?
Короче, читай приложение...
Приложение: Ответ отправлен: 29.07.2002, 15:06 Отправитель: Артём Шегеда
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.