![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Динамические кнопки и их события [D6, D7, Win2k, WinXP]
П7 © (2004-10-13 11:57:00)Уважаемые Мастера! В моей программе динамически генеряться TEdit'ы и соответствующие им кнопки. По нажатию кнопки должен появляться InputBox, значения которого должно после нажатия OK записываться в соответствующий кнопке TEdit. Как можно подобное провернуть, если писать для каждой кнопки событие отдельно не возможно.
Заранее спасибо! (:
П7 (2004-10-15 13:07:00) [1]
> SergP. (15.10.04 00:29) [7]
Можно, но это долго...
Да не парьтесь вы, я уже всё уяснил и сделал. Спасибо.
SergP. (2004-10-15 00:29:00) [2]
> [6] П7 (14.10.04 21:44)
>
> > 1008 © (14.10.04 10:54) [5]
>
> То, что вы преджложили - это жутко медленно, хотя как вариант,
> тоже сойдёт. Но я делаю, как мне Pentium133 в [1] подсказал...
> (:
А не проще ли сразу при создании эддита и кнопки, в tag кнопки записывать указатель на эдит?
типа:
Mybutton.tag:=integer(Myedit);
а в обработчике писать:
procedure TForm1.ButtonClick(Sender:TObject);
begin
Tedit(Tbutton(sender).tag).text:=InputBox('...','...','...');
end;
Либо создать класс: чтото типа кнопки с эдитом, два в одном...
П7 (2004-10-14 21:44:00) [3]
> 1008 © (14.10.04 10:54) [5]
То, что вы преджложили - это жутко медленно, хотя как вариант, тоже сойдёт. Но я делаю, как мне Pentium133 в [1] подсказал... (:
1008 (2004-10-14 10:54:00) [4]
var
EditArray:array of TEdit;
ButtonArray:array of TButton;
...
//При создании кнопки
ButtonArray[i].OnClick:=ButtonClick;
...
procedure TForm1.ButtonClick(Sender:TObject);
var
i,n:integer;
begin
n:=Length(EditArray);
for i:=0 to n-1 do begin
if Sender=ButtonArray[i] then begin
EditArray[i].Text:=InputBox('...','...','...');
end;
end;
end;
Кажется так.
П7 (2004-10-13 13:50:00) [5](:
Ладно, не ругайся... (: Дай потупить... (:
KSergey (2004-10-13 13:07:00) [6]Да епрст... А форум почитать? Ну ладно по разу в день, но по 2..3 раза в день одну и ту же тему поднимать...
Читай и ты
http://www.delphikingdom.com/helloworld/runtime_comp.htm
П7 (2004-10-13 12:52:00) [7]Спасибо, кажется то, что надо! Сейчас потестим...
Pentium133 (2004-10-13 12:01:00) [8]Как вариант:
Для каждой кнопки и Edit'а укажи уникальный Tag.
В OnButtonClick кнопку идентифицируй по нему. Находи TEdit c такимже Tag'ом и делай что надо.