Показать сообщение отдельно
  #1  
Старый 04.08.2009, 00:11
mskvkin mskvkin вне форума
Новичок
 
Регистрация: 31.08.2008
Сообщения: 99
Репутация: 10
Вопрос Помогите разобраться с вызовом процедуры

Мне необходимо со всеми компонентами определенного типа выполнить одно и тоже действие при этом хочу написать уникальную процедуру которая бы получала имя формы

Код:
procedure TForm1.Update_Table_Query(formName :TForm);
var
  i: Integer;
begin
  for i := 0 to formName.ComponentCount-1 do
    begin
      if (formName.Components[i] is TTable) then
        begin
          TTable(formName.Components[i]).Refresh;//Обновляем
        end;
    end;
end;

как мне оптимизировать код так чтобы при вызове процедуры не нужно было указывать имя формы вот в таком виде:

Form1.Update_Table_Query(Form2);

а можно было бы указать это примерно в таком виде:

Form1.Update_Table_Query(form.name);
где form.name имя нужной нам формы если я так пишу то при компиляции выдается сообщение :
[DCC Error] Unit15.pas(57): E2010 Incompatible types: 'TForm' and 'TComponentName'

как мне приобразовать типы или кто нибудь подскажите тогда как это же можно реализовать по другому

Заранее огромное спасибо!!!
Ответить с цитированием