Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];

Вниз

Создание произвольного кол-ва объектов.   Найти похожие ветки 

 
SeriousSam   (2004-09-26 17:03) [0]

Как создать например n Edit"ов?


 
jack128 ©   (2004-09-26 17:05) [1]

SeriousSam   (26.09.04 17:03)
for i := 1 to n do TEdit.Create(Self);


 
SeriousSam   (2004-09-26 17:52) [2]

ну вот создали мы например n Button"ов.
и как программировать нажатия на них?


 
Плохиш ©   (2004-09-26 17:57) [3]

x.OnClick := MySuperPuperClickHandler


 
SeriousSam   (2004-09-26 18:01) [4]

Я можно сказать новичек :)
Подробнее плиз)


 
Плохиш ©   (2004-09-26 18:06) [5]

http://www.yandex.ru/yandsearch?text=delphi+%E8%E7%EC%E5%ED%E8%F2%FC+onclick&stype=www


 
SeriousSam   (2004-09-26 18:14) [6]

все равно не понял))


 
SeriousSam   (2004-09-26 20:12) [7]

так. кажись разобрался немного.

...
for i:=1 to StrToInt(Edit1.Text) do begin
 inc(editcount);
 Edit := TEdit.Create(self);
 Edit.Parent :=ScrollBox1;
 
 Edit.Left:=12;
 Edit.Top:=12*editcount*2;
 Edit.Show;
 Edit.OnClick := HandleEditClick;
end;
...

procedure TForm1.HandleEditClick(Sender: TObject);
begin
....
end;


но как узнать пока какому именно объекту кликнули. их же у нас много :)

и еще. как посмотреть какой Text у какого либо Edit"a.


 
QuasiLamo ©   (2004-09-26 20:23) [8]

Так. Срочно прочитать "Жизнь и смерть в режиме run-time"!!!


 
jack128 ©   (2004-09-26 20:24) [9]

SeriousSam   (26.09.04 20:12) [7]
но как узнать пока какому именно объекту кликнули. их же у нас много :)

параметр Sender

SeriousSam   (26.09.04 20:12) [7]
и еще. как посмотреть какой Text у какого либо Edit"a.

Ну так сохраняй ссылки на них в массиве. Например:

TForm1 = class(TForm)
private
 FEdits: array of TEdit;
end;

SetLength(FEdits, StrToInt(Edit1.Text));
for i:= low(FEdits) to High(FEdits)  do
begin
FEdits[i] := TEdit.Create(self);
FEdits[i].Parent :=ScrollBox1;

FEdits[i].Left:=12;
FEdits[i].Top:=12*editcount*2;
FEdits[i].Show;
FEdits[i].OnClick := HandleEditClick;
FEdits[i].Tag := i;// Сохраняем в свойстве индекс едита в массиве.
end;

procedure TForm1.HandleEditClick(Sender: TObject);
begin
 if Sender is TEdit then
   with TEdit(Sender) do
     ShowMessage(Format("Кликнули по Edit""у с индексом %d. Текст edit""a - "%s"", [Tag, Text]));
end;


 
SeriousSam   (2004-09-26 21:05) [10]

QuasiLamo ©   (26.09.04 20:23) [8]
Так. Срочно прочитать "Жизнь и смерть в режиме run-time"!!!


это что и где?)


 
QuasiLamo ©   (2004-09-26 21:09) [11]

http://www.yandex.ru/yandsearch?text=%E6%E8%E7%ED%FC+%E8+%F1%EC%E5%F0%F2%FC+%E2+%F0%E5%E6%E8%EC%E5+Runtime&stype=www


 
QuasiLamo ©   (2004-09-26 21:11) [12]

извиняюсь, в клиент неправильно вставилось... Вобщем, в яндексе найдешь. Статейка, очень для новичков полезная. Там создается кнопка, и навешивается на нее событие, и много чего, и все в режиме ран-тайм


 
SeriousSam   (2004-09-26 21:13) [13]

QuasiLamo пасиб)
jack128 тоже пасиб)


 
SeriousSam   (2004-09-26 21:19) [14]

несколько не понял

ShowMessage(Format("Кликнули по Edit""у с индексом %d. Текст edit""a - "%s"", [Tag, Text]));

откуда взялось %s и откуда %d. и что в конце - [Tag, Text]?

и еще как посмотреть Text не только по клика по едиту, но и из любой части проги?
заранее всем спасибо)

уже читаю Жизнь и смерть в режиме run-time


 
GuAV ©   (2004-09-27 00:34) [15]


>
> откуда взялось %s и откуда %d.

Format+F1

> . и что в конце - [Tag, Text]?

св-ва Editа

> и еще как посмотреть Text не только по клика по едиту, но
> и из любой части проги?

Точно так же


 
jack128 ©   (2004-09-27 00:57) [16]

SeriousSam   (26.09.04 21:19) [14]
и что в конце - [Tag, Text]?

хе.

>FEdits[i].OnClick := HandleEditClick;
> FEdits[i].Tag := i

и
[Tag, ...]  ни на какие мысли не наводит??  На каждом не понятном слове - жми F1 и будет те счастье. Ну и конечно "Жизнь и смерть в режиме run-time" - статья, обязательная к прочтению.


 
SergP.   (2004-09-27 01:07) [17]

В процедуре OnClick передается параметр Sender, который является не чем иным как указателем на объект, в котором произошло данное событие.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.039 c
4-1093591313
Falcon
2004-08-27 11:21
2004.10.10
Проблемы с окнами


4-1094025255
Alex870
2004-09-01 11:54
2004.10.10
Командный процессор


1-1095939520
Kniaz
2004-09-23 15:38
2004.10.10
Блокирование файла


1-1095842295
Marat
2004-09-22 12:38
2004.10.10
Проблема с загрузкой проекта


4-1094549744
Multy
2004-09-07 13:35
2004.10.10
Как просмотреть список запушеных приложений?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский