Главная страница
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.372 c
3-1078393275
Турчин
2004-03-04 12:41
2004.04.04
Btrieve и Pervasive


11-1058260237
anonymous
2003-07-15 13:10
2004.04.04
Как создать форму которая имеется в списке available forms ?


7-1070785886
Delphi5.01
2003-12-07 11:31
2004.04.04
CD timeout


14-1078689202
Seriouss
2004-03-07 22:53
2004.04.04
Новый портал о железе! оцените?


8-1069948466
Ded Moroz
2003-11-27 18:54
2004.04.04
Как проиграть AVI из ресурсов?