программные компоненты и их события

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

программные компоненты и их события

Сообщение SeventhSon » 18.03.2009 04:40:19

объявлен массив:
ChkBx:Array[0..127] of TCheckBox;
и процедура:
procedure TForm1.ChkBxOnChng(Sender: TObject);
begin
self.Caption:='Waiting';
self.Font.Color:=clBlue;
end;

по нажатию кнопки делаю так:
ChkBx[i]:=TCheckBox.Create(ScrollBox1);ChkBx[i].Parent:=ScrollBox1;ChkBx[i].Top:=5+15*i;ChkBx[i].Left:=5;
ChkBx[i].OnChange:=@ChkBxOnChng;

после этого на форме появляется чекбокс,но при чекании его Caption и Font.Color меняется у самой формы!я почему-то думал что self. обращается к самому объекту вызвавшему это событие, т.е. Caption должен измениться у чекбокса!
подскажите пожалуйста что я делаю не так!менять надо свойства чекбокса!
SeventhSon
новенький
 
Сообщения: 56
Зарегистрирован: 17.02.2009 01:57:17

Re: программные компоненты и их события

Сообщение Vadim » 18.03.2009 05:55:43

SeventhSon писал(а):procedure TForm1.ChkBxOnChng(Sender: TObject);

Тут же русским языком написано, что процедура объявлена для TForm1, следовательно и self будет относится к форме. Вы что, разве слона то и не заметили? :)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: программные компоненты и их события

Сообщение SeventhSon » 18.03.2009 06:45:56

очень ценный совет:)а делать-то что?как свойства чекбокса менять?как-то черезе Sender. добраться до свойств можно?
SeventhSon
новенький
 
Сообщения: 56
Зарегистрирован: 17.02.2009 01:57:17

Re: программные компоненты и их события

Сообщение Vadim » 18.03.2009 07:08:04

Код: Выделить всё
(Sender as TCheckBox).Caption:='Waiting';
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: программные компоненты и их события

Сообщение SeventhSon » 18.03.2009 08:21:54

Спасибо получилось:))
SeventhSon
новенький
 
Сообщения: 56
Зарегистрирован: 17.02.2009 01:57:17


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 39

Рейтинг@Mail.ru