Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

исходный текст (Дублирование) [D6, Access]


VVV ©   (2004-05-15 19:52:00) 

Добрый вечер, можно маленький вопросик
Есть процедура
procedure TSelectForm.EducBtnClick(Sender: TObject);
begin
DataModule1.SotrQuery.Active:=false;
DataModule1.SotrQuery.SQL.Clear;
DataModule1.SotrQuery.SQL.Add('SELECT SirName, Name, Otchestvo FROM Sotrudniki  WHERE ...);
DataModule1.SotrQuery.Active:=true;
With MainForm do begin
AddSotrBtn.Hide;
EditSotrBtn.Hide;
PerevBtn.Hide;
UvolBtn.Hide;
DelSotrBtn.Hide;
Panel4.Hide;
SearchGroupBox.Hide;
StatusBar6.Hide;
StatusBar5.Hide;
StatusBar1.Hide;
StatusBar4.Hide;
StatusBar2.Hide;
wwDBGrid1.DataSource:=DataModule1.SotrFindSource;
abcNavPanel2.DataSource:=DataModule1.SotrFindSource;end;
Close;
end;
ВОПРОС?
Дело в том, что кусок кода, а именно
With MainForm do begin
AddSotrBtn.Hide;
EditSotrBtn.Hide;
PerevBtn.Hide;
UvolBtn.Hide;
DelSotrBtn.Hide;
Panel4.Hide;
SearchGroupBox.Hide;
StatusBar6.Hide;
StatusBar5.Hide;
StatusBar1.Hide;
StatusBar4.Hide;
StatusBar2.Hide;
wwDBGrid1.DataSource:=DataModule1.SotrFindSource;
abcNavPanel2.DataSource:=DataModule1.SotrFindSource;end;
нужен и при нажатии других кнопок.

Как сделать так, чтобы он не повторялся что-то вроде этого
procedure TSelectForm.EducBtnClick(Sender: TObject);
begin
DataModule1.SotrQuery.Active:=false;
DataModule1.SotrQuery.SQL.Clear;
DataModule1.SotrQuery.SQL.Add('SELECT SirName, Name, Otchestvo FROM Sotrudniki  WHERE Education='''...);
DataModule1.SotrQuery.Active:=true;
...Тот кусок кода...
end;


Oxer   (2004-05-16 12:01:00) [1]

Спасибо всем за помощь.


Fedia   (2004-05-16 02:21:00) [2]

Oxer   (16.05.04 00:08) [3]
>А как вызвать эту процедуру в другом модуле?

Объяви свою процедуру в разделе interface, т.е. выше ключевого слова implementation.
 Чтобы вызвать ее из другого модуля, в этом модуле, после слова
implementation напиши uses MyUnit (название модуля, в котором находится процедура);


Oxer   (2004-05-16 00:08:00) [3]

havez  (15.05.04 20:28) [1]

>Ну и оформи ентот кусок отдельной процедурой и вызывай где нужно.

А как вызвать эту процедуру в другом модуле?


VVV   (2004-05-15 20:35:00) [4]

Да я уже понял. Просто голова уже совсем глючит.
Спасибо.


havez   (2004-05-15 20:28:00) [5]

Ну и оформи ентот кусок отдельной процедурой и вызывай где нужно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо