IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Массив объектов!
сообщение
Сообщение #1


Гость






НАРОД, поможите как сделать массив из объектов в Дельфях!!!!
Допустим, у меня на форме 10 Эдитов.. надо что бы они принадлежали массиву A ... первый едит - А[1]... и так далее.. и чтобы я мог обращатся к ним так - допустимм A[4].text:='ага гаа' !!!!!!!!
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Lonely_Raven
****

Группа: Пользователи
Сообщений: 640
Пол: Мужской

Репутация: -  1  +


Это кусок кода моей программы учета кабелей
с генерацией динамических компонентов
которые изображ муфты
-=-=-=-=-=-=
перед их генерацией программа находит их
в базе данных
-=-=-=-=--=
муфты(компоненты) находяться в массиве
-=-=-=-=-=-=

Код

{
 генерируем найденные данные в виде панелек муфт
}
c:=Form7.Query1.FieldByName('Number').asInteger;
c1:=Form7.Query1.FieldByName('Number').asString;
// значение из активного поля колонки Number

For i:=1 to Form7.Query1.RecordCount do begin
 MyPan[c] := TPanel.Create(Image1);
 MyPan[c].Name:='Pan' + c1; // генерируем имя компонента

 MyPan[c].height := 10;
 MyPan[c].width := 10;
 MyPan[c].BevelInner:=bvLowered;
 MyPan[c].caption :=Form7.Query1.FieldByName('Number').asString;
 MyPan[c].Cursor:=crHandPoint;
 MyPan[c].Color:=clWhite;
//  button1.Hint:='Hello Word';
//  button1.ShowHint:=true;
//  Application.HintColor:=clAqua;
 Application.HintHidePause:=7500;
 MyPan[c].Hint:='Муфта '+Form7.Query1.FieldByName('NameMuf').asString+#13+#10+'расстояние от ТП '+Form7.Query1.FieldByName('LonFroTP').asString+#13+#10+'растояние до ТП '+Form7.Query1.FieldByName('LonGoTP').asString;
 MyPan[c].ShowHint:=True;
 MyPan[c].PopupMenu:=PopupMenu1;
 MyPan[c].left:=Form7.Query1.FieldByName('Mous_X').asInteger;
 MyPan[c].top:=Form7.Query1.FieldByName('Mous_Y').asInteger;
 MyPan[c].Parent :=ScrollBox1;
 MyPan[c].OnMouseMove:=MyPanMouseMov;
 MyPan[c].OnClick:=MyPanOnCl;
 Form7.Image1.Left:=0;
 Form7.Image1.Top:=0;
 Form7.Query1.Next; // следующая запись
 c:=Form7.Query1.FieldByName('Number').asInteger;
 c1:=Form7.Query1.FieldByName('Number').asString;
end;
end else exit;
 Block:=False;
end;
{
 Обработка события Движен Мыши над динамич панельками
}
Procedure TForm7.MyPanMouseMov(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
begin
 Form7.Add1.Enabled:=False;
 Form7.Del1.Enabled:=True;
 // Label1.Caption:=((Sender as TPanel).Name);
 StatusBar1.Panels[4].Text:=((Sender as TPanel).Caption);
{
Вот тут самое интересное если бы не наткнулся на эту строку то долго бы еще парился как определить из какого динамичексго компонента пришло событие Sender --- отправитель
}
 (Sender as TPanel).Color:=clRed;
end;

{
Выборка динамического компонента из массива и его изничтожение как
компонента, а так же из базы данных
}


Сообщение отредактировано: volvo -


--------------------
Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ
---------------------
RTFM - Read the fucking manual
---------------------
http://www.livejournal.com/users/lonley_raven/
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 16.06.2024 14:08
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name