Главная страница
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.054 c
11-1059449741
Юля
2003-07-29 07:35
2004.04.04
TaskBar


9-1063677697
Кен
2003-09-16 06:01
2004.04.04
Программа на glscene под WindowsXP сильно тормозит. Какие нужно


14-1078859976
ChcngerMan
2004-03-09 22:19
2004.04.04
Посоветуйте установщик!!!!


1-1079498494
Malax
2004-03-17 07:41
2004.04.04
Копирование и запуск приложения


4-1074785967
Acidlex
2004-01-22 18:39
2004.04.04
Как сделать SysTray Bar в своем приложении