НАРОД, поможите как сделать массив из объектов в Дельфях!!!! Допустим, у меня на форме 10 Эдитов.. надо что бы они принадлежали массиву A ... первый едит - А[1]... и так далее.. и чтобы я мог обращатся к ним так - допустимм A[4].text:='ага гаа' !!!!!!!!
:D -=-=-=-= а вот предварительная генерация его по обработке события щелчка мышки правой кнопки по полю Image =-=-=-
Код
private { Private declarations }
public MyPan : array[1..99]of Tpanel; { Опишем массив в сотню Компонентов -1 класса TPanel } MufFilNames:String; //-------------- end;
Const PsevBas : array [0..5] of String = ('z','v','s','k','l','c'); var Form7: TForm7; wx,wy:Integer;{Доступность переменных в разных формах} MyPanMouseMov:TMouseMoveEvent; MyPanOnCl:TNotifyEvent; implementation
uses lbsd2, lbsd8, LBSD10;
{$R *.dfm}
{ Монстрячим динамический компонент класса TPanel } procedure TForm7.Add1Click(Sender: TObject); Var Numb:Integer; MufFilN:String; begin Form7.Query1.Last; Numb:=Form7.Query1.FieldByName('Number').asInteger; { получаем количество записей в компоненте Query (количество найденых записей) } Numb:=Numb+1; { получаем следующий номер муфты (нового компонента) } MyPan[Numb] := TPanel.Create(Image1); { динамический компонент класса TPanel конструктор на событие Create (Создать) от компонента Inmage1 то есть получаем его свойства (задаем владельца нового компонента) } with MyPan[Numb] do BEGIN Parent :=ScrollBox1; // родитель компонента height := 4; // работает width := 4; // с новым caption := 'M'; // компонентом Cursor:=crHandPoint; Color:=clLime; left:=wx+Image1.Left; top:=wy+Image1.Top; END; { при создании нового компонента пишем его место расположения, имя номер и т.д в базу данных } With Form7.Table1 do begin Append; FieldByName('Number').AsInteger:=Numb; FieldByName('NameMuf').AsString:=Form7.NameMuft.Text; FieldByName('Lines').AsString:=ilLine.Caption; FieldByName('Fiders').AsString:=ilFider.Caption;
MufFilN:=ilLine.Caption+ilFider.Caption+'MufIm'+ FieldByName('Number').AsString+PsevBas[Form2.IndexBas]; FieldByName('MufZaoz').AsString:=MufFilN; FieldByName('LonFroTp').AsInteger:=StrToInt(Form7.ot_TP.Text); FieldByName('LonGoTp').AsInteger:=StrToInt(Form7.k_TP.Text); FieldByName('Im_X').AsInteger:=Image1.Left; FieldByName('Im_Y').AsInteger:=Image1.Top; FieldByName('Mous_X').AsInteger:=wx; FieldByName('Mous_Y').AsInteger:=wy; Post; end; { после генерации панели создаем новую запись в базе данных и пишем туда данные } end;
Сообщение отредактировано: volvo -
--------------------
Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы. МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/