Delphi-Help

Идентификация CheckBox'ов

Оцените материал
(0 голосов)


Идентификация CheckBox'ов

В режиме проектирования вы, как программист, без труда узнаете, сколько checkbox'ов содержит ваша форма. А вот когда приложение запущено... Используйте Delphi Run Time Type Information (RTTI). Для нашей испытуемой формы вы можете попробовать следующий код:

    var
 
i : Integer
begin
 
for i := 0 to ComponentCount - 1 do:
if Components[i] is TCheckBox then
(Components[i] as TCheckBox).Checked then
begin
... сюда поместите ваш код ...
end;
end;  

Кроме того, следующий код Delphi абсолютно корректен:

    if Components[i] = CheckBox5 then
Чтотоделаем; 

Также, каждый компонент в Delphi имеет опубликованное (Published) свойство с именем 'Tag', значение которого вы можете задавать во время создания компонента, и затем, во время выполнения приложения, обращаться к нему для получения доступа к компоненту:

    var
i : Integer
begin
 
for i := 0 to ComponentCount - 1 do:
if Components[i] is TCheckBox then
with (Components[i] as TCheckBox) do
Case Tag of
1 : if Checked then DoSomethingOnBox1;
2 : if Checked then DoSomethingOnBox2;
... другое ...
end;
end;  

Для получения дополнительной информации, обратитесь к справке Delphi с ключевым словом "ComponentCount".

Авторизация



Счетчики