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

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

Поставить все DBEdit в ;Enabled:=False; [D5, Win2k]


ruslan_as ©   (2002-02-13 11:16:00) 

Как в программе отключить все DBEdit (Enabled:=False). А то у меня их тут собралось около 60.


Юрий Зотов (M)   (2002-02-13 11:36:00) [1]

Если все DBEdit"ы имеют общий DataSet, то все гораздо проще - DisableControls.


Крутов Алексей   (2002-02-13 11:30:00) [2]

Извиняюсь, переменную vDatasource передавать в процедуру не надо.

procedure SetEnabledFalseToDBControls(vWinControl:TWinControl);
procedure SetEnabledFalseForGroupControls(wc:TWinControl);
var i:integer;
c:TControl;
begin
if wc.ControlCount > 0 then
for i:=0 to wc.ControlCount-1 do
begin
c:=wc.Controls[i];
if c is TDBEdit then (c as TDBEdit).Enabled:=false;
if c is TWinControl then
SetEnabledFalseForGroupControls(c as TWinControl);
end;
end;
begin
SetEnabledFalseForGroupControls(vWinControl);
end;


Крутов Алексей   (2002-02-13 11:28:00) [3]

Процедура для выставления свойства Enabled у DBEdit на форме.
Вызов процедуры такой: SetEnabledFalseToDBControls(Form1),
где Form1 - переменная типа TForm.
Код возможно придется немного подкорректировать, но идея, я
думаю, понятна. Удачи !

procedure SetEnabledFalseToDBControls(vWinControl:TWinControl;vDataSource:TDataSource);
procedure SetEnabledFalseForGroupControls(wc:TWinControl);
var i:integer;
c:TControl;
begin
if wc.ControlCount > 0 then
for i:=0 to wc.ControlCount-1 do
begin
c:=wc.Controls[i];
if c is TDBEdit then (c as TDBEdit).Enabled:=false;
if c is TWinControl then
SetEnabledFalseForGroupControls(c as TWinControl);
end;
end;
begin
SetEnabledFalseForGroupControls(vWinControl);
end;


Наверх

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