Идентификация 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".