![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Всю голову себе сломал, хоть тресни FindComponent не верно отрабатывает если перед ним не сделать Form7.Show;
Не рабочий код: Код:
dm.DbGrid2.DataSource.DataSet.Active:=true;
dm.DbGrid2.DataSource.DataSet.First;
while not dm.DbGrid2.DataSource.DataSet.Eof do
begin
i:=dm.DbGrid2.DataSource.DataSet.RecNo;
{ with Form7 do }
(Form7.FindComponent('MaskEdit'+IntToStr(i+1)) as TMaskEdit).Text:=dm.DbGrid2.DataSource.DataSet.FieldValues['FachPK'];
if ((Form7.FindComponent('MaskEdit'+IntToStr(i+1)) as TMaskEdit).Text='СПЕЦИАЛЬНОСТЬ') then
begin
(Form7.FindComponent('Edit'+IntToStr(i+4)) as TEdit).Enabled:=False;
(Form7.FindComponent('ComboBox'+IntToStr(i)) as TComboBox).ItemIndex:=1;
(Form7.FindComponent('ComboBox'+IntToStr(i)) as TComboBox).Enabled:=False;
(Form7.FindComponent('MaskEdit'+IntToStr(i+6)) as TMaskEdit).Enabled:=False;
(Form7.FindComponent('Edit'+IntToStr(i+8)) as TEdit).Enabled:=False;
end;
dm.DbGrid2.DataSource.DataSet.Next;
end;Код:
dm.DbGrid2.DataSource.DataSet.Active:=true;
dm.DbGrid2.DataSource.DataSet.First;
Form7.Show;//ОТЛИЧИЕ ТОЛЬКО В ЭТОЙ СТРОКЕ
while not dm.DbGrid2.DataSource.DataSet.Eof do
begin
i:=dm.DbGrid2.DataSource.DataSet.RecNo;
{ with Form7 do }
(Form7.FindComponent('MaskEdit'+IntToStr(i+1)) as TMaskEdit).Text:=dm.DbGrid2.DataSource.DataSet.FieldValues['FachPK'];
if ((Form7.FindComponent('MaskEdit'+IntToStr(i+1)) as TMaskEdit).Text='СПЕЦИАЛЬНОСТЬ') then
begin
(Form7.FindComponent('Edit'+IntToStr(i+4)) as TEdit).Enabled:=False;
(Form7.FindComponent('ComboBox'+IntToStr(i)) as TComboBox).ItemIndex:=1;
(Form7.FindComponent('ComboBox'+IntToStr(i)) as TComboBox).Enabled:=False;
(Form7.FindComponent('MaskEdit'+IntToStr(i+6)) as TMaskEdit).Enabled:=False;
(Form7.FindComponent('Edit'+IntToStr(i+8)) as TEdit).Enabled:=False;
end;
dm.DbGrid2.DataSource.DataSet.Next;
end;Код:
if ((Form7.FindComponent('MaskEdit'+IntToStr(i+1)) as TMaskEdit).Text='СПЕЦИАЛЬНОСТЬ') thenСобственно вопрос как сделать так чтоб выполнить findcomponent над form7 без необходимости показывания 7 формы? P.S. Parent'ом для искомых компонентов является GroupBox1, но мне это нифига не помогло ибо при поиске в паренте выдает Error Последний раз редактировалось Sheitan48, 22.05.2013 в 01:09. |