Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Внизкак впихнуть в ImageList иконку нестандартного размера Найти похожие ветки
← →
webpauk © (2012-06-18 12:42) [0]На форме есть ImageList (Width = 48, Height = 48)
Пытаюсь:
MyIcon:=TIcon.Create;
MyIcon.Width:=48;
MyIcon.Height:=48;
ImageList.AddIcon(MyIcon);
происходит ошибка, т.к. при добавлении иконки в AddIcon проверяется её размеры:function TCustomImageList.AddIcon(Image: TIcon): Integer;
begin
if Image = nil then
Result := Add(nil, nil)
else
begin
CheckImage(Image);
Result := ImageList_AddIcon(Handle, Image.Handle);
end;
Change;
end;
procedure TCustomImageList.CheckImage(Image: TGraphic);
begin
if Image <> nil then
with Image do
if (Height < FHeight) or (Width < FWidth) then
raise EInvalidOperation.Create(SInvalidImageSize);
end;
Как обойти ограничение? Ведь вручную иконка впихивается!!!
← →
brother © (2012-06-18 12:52) [1]перекрыть CheckImage?
← →
webpauk © (2012-06-18 13:11) [2]Нашел:
function ImageList_ReplaceIcon(ImageList: THandle; Index: Integer; Icon: hIcon): Integer; stdcall; external "comctl32.dll" name "ImageList_ReplaceIcon";
procedure MyAddIconPrc;
begin
ImageList_ReplaceIcon(ImageList.Handle, -1, MyIcon.Handle);
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.094 c