Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.06;
Скачать: CL | DM;

Вниз

Группа компонентов в одном имени   Найти похожие ветки 

 
Step[B.M.] ©   (2003-01-29 18:05) [0]

Как можно объединить несколько однотипных компонентов в кой-нить объект и обращаться через него к свойствам этих компонентов.

например:
есть 15 шт. Button (Button1, Button2, ... Button15)
как бы обратиться к свойству Enabled всех этих кнопок не используя рутину типа:
Button1.Enabled:=false;
Button2.Enabled:=false;
...
Button15.Enabled:=false;


 
Anatoly Podgoretsky ©   (2003-01-29 18:25) [1]

Новый класс и метод SetAllButton


 
passm ©   (2003-01-29 18:29) [2]

Step[B.M.] © (29.01.03 18:05)> Можно перебрать property TWinConcrol.Controls[Index: Integer]: TControl;
И если i-й Control тебе "понравится" (is TButton,...) то делай с ним что хочешь.
Либо:
procedure SetEnableByttons(const ButtonArray: array of TButton;
const Enabled: Boolean);
var
i: Integer;
begin
for i:= Low(ButtonArray) to High(ButtonArray) do
ButtonArray[i].Enabled:= Enabled
end;
Либо пополни TList
...


 
down   (2003-01-29 19:08) [3]


procedure TMyForm.BlaBlaBla;
var
ButtonName: string;
I: Integer;
C: TComponent;
begin
for I := 1 to 15 do
begin
C := FindComponent("Button" + IntToStr(I));
if C is TButton then
TButton(C).Enabled := False;
end;
end;





Страницы: 1 вся ветка

Текущий архив: 2003.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-15628
Ihtiandr
2003-01-29 13:16
2003.02.06
dbEdit


4-15984
Alexander
2002-12-20 11:39
2003.02.06
Можно ли (и как) поменять дату создания папки для Windows 9x


14-15925
Jeer
2003-01-21 15:16
2003.02.06
Win NT, w2k как real-time платформа


3-15507
bambina
2003-01-20 16:34
2003.02.06
kak dobavit novuyu zapis v tablicu Paradox?


3-15470
XHunter
2003-01-18 20:56
2003.02.06
Как програмно упаковать базу данных MSAcces?