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

Вниз

Массивы объектов   Найти похожие ветки 

 
Бегинер   (2002-08-25 21:13) [0]

Доброго времени суток, МАСТЕРА!!!
Такая вот ситуация....создаю несколько MaskEdit"тов таким способом:

SetLength(a, n);
for i:=0 to n-1 do
begin
a[i]:=TMaskEdit.Create(Form1);
a[i].name:="MEdit"+inttostr(i);
a[i].parent:=Form1;
......
end;


Сразу же после этого цикла хочу запустить такой же, создающий столько же UpDown"ов,связанных с MaskEdit"тами, делаю так:


SetLength(b, n);
for i:=0 to n-1 do
begin
b[i]:=TUpDown.Create(Form1);
b[i].parent:=Form1;
b[i].associate:="class"+inttostr(i); //Тут ошибка...говорит, что нужен тип TWinControl вмест String
end;


Как правильно прикрепить UpDown"ы и MaskEdit"ы с одинаковыпи индексами друг к другу?


 
TTCustomDelphiMaster   (2002-08-25 21:44) [1]

b[i].associate := a[i];


 
Юрий Зотов   (2002-08-25 21:45) [2]

SetLength(a, n);
SetLength(b, n);
for i:= 0 to n-1 do
begin
a[i] := TMaskEdit.Create(Form1);
// a[i].name := "MEdit" + inttostr(i); // Это лишнее.
a[i].parent := Form1;
b[i] := TUpDown.Create(Form1);
b[i].parent := Form1;
b[i].associate := a[i]; // Ссылка, а не имя!!!
......
end;



 
Бегинер   (2002-08-25 21:54) [3]

Большое Вам СПАСИБО!!!!


 
Anatoly Podgoretsky   (2002-08-25 22:01) [4]

Попробуй b[i].associate:=a[i]


 
Бегинер   (2002-08-25 22:49) [5]

Вставил я ВАШ код, создались эти АпДауны, но не ассоциированные.....у меня пременные длинные, но может поверите:
gr: array of TMaskEdit;
ud: array of TUpDown;

SetLength(gr, ng);
SetLength(ud, ng);
for i:=0 to ng-1 do
begin
gr[i]:=TMaskEdit.Create(m4);
gr[i].name:="class"+inttostr(i);
gr[i].parent:=m4.Panel1;
gr[i].text:="1";
gr[i].left:=8;
gr[i].color:=clSkyBlue;
gr[i].height:=24;
gr[i].width:=17;
gr[i].top:=i*24+40;
gr[i].EditMask:="0;1;";
ud[i]:=TUpDown.Create(m4);
ud[i].parent := m4;
ud[i].associate:=gr[i];
end;


 
Ученик   (2002-08-25 22:55) [6]

ud[i].parent := m4.Panel1;


 
Бегинер   (2002-08-25 23:05) [7]


> Ученик © (25.08.02 22:55)

Спасибочки.....надо завязывать на сегодня....


 
Бегинер   (2002-08-25 23:12) [8]

В предыдуших формах проекта я делал такую фишку для удобства: при наведении на Edit т.е. в обработчике OnMouseMove писал xxxxx.setfocus;.Как в моем массиве сделать так же для каждого объекта?


 
Юрий Зотов   (2002-08-25 23:22) [9]

1. А еще лучше ud[i].parent := gr[i].parent. Чтобы не править код, если завтра надумате перетащить контролы куда-то еще.

2. Сделать один общий OnMouseMove для всех нужных контролов:
if Sender is TWinControl then TWinControl(Sender).SetFocus


 
Бегинер   (2002-08-25 23:38) [10]

Да вы прямо АССЫ!!!!



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

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

Наверх





Память: 0.46 MB
Время: 0.007 c
1-14042
yar
2002-08-26 18:02
2002.09.05
TwebBrouser


14-14262
VID
2002-08-09 15:47
2002.09.05
Нужен навороченый RichEdit


14-14269
lipskiy
2002-08-11 02:34
2002.09.05
Ищу нормальный UnZip-компонент


4-14323
_alx_
2002-07-03 18:06
2002.09.05
Вопрос по EMF


3-13899
BJValentine
2002-08-12 20:55
2002.09.05
ADO прикол





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский