Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> array of tbutton, onclick 
:(
    Опции темы
Форсет
  Дата 13.4.2005, 21:36 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











в общем у меня при клике на форме создаётся объект класса Tbutton в массиве but
Код




var
numbuttons:integer=0;
but:array[0..100] of Tbutton;
 pos: Tpoint;
...

procedure TForm1.FormClick(Sender: TObject);
begin
getcursorpos(pos);
but[numbuttons]:=tbutton.Create(nil);

but[numbuttons].Name :='Button'+inttostr(numbuttons);
but[numbuttons].Height :=33;
but[numbuttons].Width :=105;
but[numbuttons].Parent :=Form1;
but[numbuttons].Caption :='КНОПКА';
but[numbuttons].Left := pos.X - form1.Left;
but[numbuttons].top:=pos.Y-form1.Top;
numbuttons:=numbuttons+1


так вот... как я понял чтобы обрабатывать нажатия на эту кнопку нужно ей присвоить NothifyEvent
Код

procedure Tform1.pressbutton (sender:tobject);
begin
{действия};
end;
.....
but[numbuttons].Onclick= PressButton;

Но так ничего не получится т.к. у каждой кнопки будет одна и та же процедура. Как мне Обрабатывать нажатия на каждую кнопку массива в отдельности?
smile
  Вверх
Pakshin A. S.
Дата 13.4.2005, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Код

procedure Tform1.pressbutton (sender:tobject);
begin
 case StrToInt(Copy((Sender as TButton).Name, 7, Length((Sender as TButton).Name)-6)) of
  1:
  2:
 end;

//или проще:
 if (Sender as TButton).Name = 'Button1'
  then
   ...
end;


Это сообщение отредактировал(а) Pakshin A. S. - 13.4.2005, 21:40
PM   Вверх
Форсет
Дата 13.4.2005, 21:44 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Спасибо!!!
  Вверх
Pakshin A. S.
Дата 13.4.2005, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Не за что... рад помочь.. smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0463 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.