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

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

TOO LONG CODE


Help Needer ©   (2002-10-10 09:47:00) 

Можно ли сократить этот код:

begin
With Edit1 do
begin
Enabled:=True;
Color:=clRed;
Text:="";
end;
With Edit2 do
begin
Enabled:=True;
Color:=clRed;
Text:="";
end
With Edit3 do
begin
Enabled:=True;
Color:=clRed;
Text:="";
end;
With Edit4 do
begin
Enabled:=True;
Color:=clRed;
Text:="";
end
End;

У всех EditBox я меняю одни и те же свойства на одни и те же значения. Только вот код у меня громоздкий. Не поможите упростить?


DarkGreen   (2002-10-15 05:47:00) [1]

2 Help Needer: А зачем его упрощать? Он и так простой донельзя. При чем самый быстрый :-) С процедурами и циклами будет медленней


X_Key   (2002-10-14 20:27:00) [2]

Удалено модератором


Skier   (2002-10-10 09:56:00) [3]

>Help Needer
А можно совсем просто, если ты
меняешь атрибуты у всех компонентов TEdit


Alx2   (2002-10-10 09:52:00) [4]

>Help Needer (10.10.02 09:47)
>Alx2 © (10.10.02 09:49)

Получится примерно так: :)

procedure SetAttr(Edit : TEdit);
begin
with Edit do
begin
Enabled := True;
Color := clRed;
Text := "";
end;
end;

begin
SetAttr(Edit1);
SetAttr(Edit2);
SetAttr(Edit3);
SetAttr(Edit4);
end;


Skier   (2002-10-10 09:50:00) [5]

>Help Needer
Можно в цикле с использованием метода
владельца Edit-ов FindComponent(...)
А потом так :


with AFoundComponent as TEdit do begin
//бла-бла-бла
end; //with


Alx2   (2002-10-10 09:49:00) [6]

Конечно можно. Просто напиши отдельную процедуру для одного Edit, переданного как параметр. А потом ее вызови для нужных Edit


Наверх

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