Показать сообщение отдельно
  #1  
Старый 14.06.2013, 17:39
Аватар для AlexandrV
AlexandrV AlexandrV вне форума
Начинающий
 
Регистрация: 10.02.2013
Сообщения: 197
Версия Delphi: XE3
Репутация: -624
Восклицание Подскажите почему не работает

Вот ини файл

Код:
[Load_Ico]
MaxIco=5
Icos0=LibxEditFiles\Picture\IcoLang\rusIco.bmp
IcoWidth0=16
IcoHeight0=11
Icos1=LibxEditFiles\Picture\IcoLang\engIco.bmp
IcoWidth1=16
IcoHeight1=11
Icos2=LibxEditFiles\Picture\IcoLang\ukrIco.bmp
IcoWidth2=16
IcoHeight2=11
Icos3=LibxEditFiles\Picture\IcoLang\spaIco.bmp
IcoWidth3=16
IcoHeight3=11
Icos4=LibxEditFiles\Picture\IcoLang\freIco.bmp
IcoWidth4=16
IcoHeight4=11
Icos5=LibxEditFiles\Picture\IcoSelectDirectry.bmp
IcoWidth5=15
IcoHeight5=16

вот код

Код:
procedure LoadIco;
var hjkl:Integer;
begin
  BmpImageIcos:=TBitmap.Create;
  IniRData:=TIniFile.Create(ExtractFilepath(Application.ExeName)+'LibxEditFiles\Picture\IcoLang\ReadIco.RData');
  for hjkl := 0 to IniRData.ReadInteger('Load_Ico','MaxIco',1) do begin
    bmpImageIcos.LoadFromFile(ExtractFilePath(ParamStr(0))+IniRData.ReadString('Load_Ico','Icos'+inttostr(hjkl),''));
    bmpImageIcos.Transparent:=True;
    Form2.ImageList1.Width:=IniRData.ReadInteger('Load_Ico','IcoWidth'+inttostr(hjkl),16);
    Form2.ImageList1.Height:=IniRData.ReadInteger('Load_Ico','IcoHeight'+inttostr(hjkl),11);
    Form2.ImageList1.Add(bmpImageIcos,nil);
  end;
  BmpImageIcos.Free;
end;

почемута последняя иконка которая загружается становиться не в индексе 5 а в индексе 0. Можно ли это както исправить. Кажется дело в размере так как у предыдущих 4х иконок начиная с 0 размер 16 X 11 а у последней размер 15 X 16

Пожалуйста помогите исправить.
Ответить с цитированием