![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
IniFile:=TIniFile.Create(path+'Inifile.ini');
IniFile.WriteBool('Param', 'A1', a1.Checked); IniFile.WriteBool('Param', 'A2', a2.Checked); IniFile.WriteBool('Param', 'A3', a3.Checked); IniFile.WriteBool('Param', 'A4', a4.Checked); .................. ............. ..............так до A237 Этот код как мне уменшить??? |
|
#2
|
|||
|
|||
|
А что, загнать в цикл нельзя? =)
Примерно в таком духе: Код:
var
chkBox: TCheckBox;
i: Byte;
IniFile: TIniFile;
begin
IniFile := TIniFile.Create(path+'Inifile.ini');
for i := 1 to 237 do
begin
chkBox := FindComponent('a' + IntToStr(i));
if chkBox = nil then Continue;
IniFile.WriteBool('Param', 'A' + IntToStr(i), (chkBox as TCheckBox).Checked);
end;
...P.S. Я так понимаю, что вы записываете состояние флажков CheckBox? |
|
#3
|
||||
|
||||
|
Цитата:
но почему то оно выдает ощибку тут chkBox := FindComponent('a' + IntToStr(i)); Код:
Var
chkBox: TAdvOfficeRadioButton;
IniFile:TIniFile;
Path:String;
i:Byte;
begin
Path:=Application.ExeName;
Path:=ExtractFileDir(Path);
if Path[Length(Path)]<>'\' then Path:=Path+'\';
IniFile:=TIniFile.Create(path+'Inifile.ini');
for I := 1 to 237 do
begin
chkBox := FindComponent('a' + inttostr(i));
if chkBox = nil then Continue;
IniFile.WriteBool('Param', 'a' + IntToStr(i), (chkBox as TAdvOfficeRadioButton).Checked);
IniFile.Free;
end;В чем проблема?? |
|
#4
|
|||
|
|||
|
А, ну я поторопилась немного. Объявите chkBox как переменную типа TComponent
Код:
var chkBox: TComponent; |