Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Вопрос по процедруе в форме.   Найти похожие ветки 

 
Anarki ©   (2004-03-13 21:42) [0]

Помогите с такой траблой.

У меня есть 2 формы. На них компоненты ComboBox с одинаковым названием: COMBO_1, COMBO_2.

У модуля первой формы есть процедура.


procedure TForm1.InitCombos();

begin
      COMBO_1.ItemIndex := 5;
      COMBO_2.ItemIndex := 10;
end;
...

procedure TForm1.FormCreate(Sender:TObject);
begin
InitCombos();
end;


Это у меня в модуле Unit1. При создании формы выставляется соответсвующее значение ItemIndex"ов для ComboBox"ов.

А можно ли эту процедуру применить также к другой форме?
Если я напишу в коде второго модуля:


TForm2.FormCreate(Sender:TObject);
begin
Form2.InitCombos();
end;

то для комбо-боксов второй формы ничего не произойдёт.

Пытался сделать параметр для процедуры

procedure TForm1.InitCombos(Form: TForm);

а потом в коде процедуры:

Form.COMBO_1.ItemIndex := 5;

ошибка, что COMBO_1 - такого нет.

Как решить траблу?


 
olookin ©   (2004-03-13 21:56) [1]

InitCombos(Sender : TObject)

 if (sender as TForm).Components[i].Name="Combo_1" then


 
olookin ©   (2004-03-13 21:58) [2]

ксатии вообще проще InitCombos(Sender as  TComboBox)

и сюда пихай что хочешь


 
P.N.P. ©   (2004-03-13 22:05) [3]

procedure InitCB(F:TForm);
var i:integer;
begin
for i:=0 to F.ComponentCount-1 do
if (F.Components[i] is TComboBox)and(TComboBox(F.Components[i]).Name="COMBO_1") then
TComboBox(F.Components[i]).ItemIndex:=3;
 end;

procedure TForm1.FormCreate(Sender: TObject);
begin
InitCB(Form1);
end;


 
Defunct ©   (2004-03-13 22:06) [4]

Сделать общую процедуру для настроийки каких-то ComboBox, и передавать ей в качестве параметров ComboBox"ы с формы.

Например так:

Procedure ComboBoxInit(CB1,CB2:TComboBox);
Begin
 If CB1.ItemsCount>5 Then CB1.ItemIndex := 5;
 If CB2.ItemsCount>10 Then CB2.ItemIndex := 10;
End;


А в форме просто ее вызывать как:
ComboBixInit(COMBO_1, COMBO_2);

Правда надо ли это, каждая форма должна заботиться о схоих компонентах сама.



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

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
3-1078902460
HeoGtan
2004-03-10 10:07
2004.04.04
PARADOX - через АДО


4-1075131178
Артём
2004-01-26 18:32
2004.04.04
Инересная проблема Помогите решить


14-1077015669
Alex_Bredin
2004-02-17 14:01
2004.04.04
Локомотив - Монако 24 февраля


6-1075289378
Zelius
2004-01-28 14:29
2004.04.04
Глюк в инди при работе с потоками?


1-1079582732
DNS
2004-03-18 07:05
2004.04.04
Поиск в StringGrid?