Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.08.2009, 19:55   #1
Zeraim
Ra-Ra ?
Форумчанин
 
Аватар для Zeraim
 
Регистрация: 06.03.2008
Сообщений: 286
По умолчанию Рисовать Ico в Image

Вроде бы вопрос изъезженный, но у меня что-то не получается 8)
В общем есть массив mInfo[...].Icon - здесь именно сами иконки.
Пробовал рисовать так:
Код:
with TImageList.Create (nil) do
  begin
    AddIcon (mInfo[1].Icon);
    TheBitmap := TBitmap.Create;
    GetBitmap (0, TheBitmap);
    Free;
  end;
Image1.Canvas.Draw(0,0,TheBitmap);
В этом случае просто рисует чёрный квадрат.
Код:
Image1.Canvas.Draw(0,0,mInfo[1].icon);
А тут просто выдаёт ошибку =\\
Zeraim вне форума Ответить с цитированием
Старый 03.08.2009, 20:07   #2
hoza_syl
Форумчанин
 
Аватар для hoza_syl
 
Регистрация: 23.05.2008
Сообщений: 219
По умолчанию

Тут очень напутано.
Зачем тебе вообще TheBitmap???
Конечно он чорный - ведь он пустой!!!
Во вторых ты создаеш, а затем уничтожаеш ImageList??????????

Давай разбиратся:
В масиве сами иконки, или их handle????
The Revolution is Now!
hoza_syl вне форума Ответить с цитированием
Старый 03.08.2009, 21:05   #3
Zeraim
Ra-Ra ?
Форумчанин
 
Аватар для Zeraim
 
Регистрация: 06.03.2008
Сообщений: 286
По умолчанию

Конечно уничтожаю, просто не привёл строки.
Иконку я вытаскиваю во время перетаскивания файла на форму:
Код:
IT := SHGFI_LARGEICON;
FillChar(fInfo, Sizeof(fInfo), #0);
mInfo[Length(mInfo)-1].Icon := TIcon.Create;
ImageList := TImageList.Create(nil);
ImageList.Height := 32;
ImageList.Width := 32;
ImageList.ShareImages := true;
ImageList.Handle := SHGetFileInfo(nf,SFGAO_SHARE,fInfo,sizeof(fInfo)
                                  ,IT or SHGFI_SYSICONINDEX);
ImageList.GetIcon(fInfo.iIcon,mInfo[Length(mInfo)-1].Icon);
ImageList.Free;
Проблема в том что иконка на форме рисуется а в имеидже упорно не хочет. nf - адрес файла. mInfo динамический массив.
=================================== =================================== ===========================
Как говорится, а слона я и не заметил. Динамические массивы начинаются с 0, а не с 1. Мой косяк 8(

Последний раз редактировалось Zeraim; 04.08.2009 в 03:42.
Zeraim вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по Image (скачанная картинка не хочет выводиться в Image) Radnor Мультимедиа в Delphi 2 06.07.2009 02:20
Загрузка .ico на image через Resource delphin100 Мультимедиа в Delphi 6 28.01.2009 18:44
Bmp в ico AngelOfDeath Мультимедиа в Delphi 9 30.12.2008 06:21
PSD в ICO vinni Мультимедиа в Delphi 10 03.10.2008 16:52
Ico Zeraim Мультимедиа в Delphi 8 22.05.2008 09:11