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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2014, 14:54   #1
Сидоров
Пользователь
 
Аватар для Сидоров
 
Регистрация: 01.07.2014
Сообщений: 11
По умолчанию Большие иконки иконки exe файла

Все привет. Пишу приложение , нем в listview должны отображаться большие иконки (Как у рабочего стола Window 7 ) ,но не знаю как видовс получает большие иконки .Сейчас получаю иконки так

Код:
function TForm1 . ExtractIcon ( fName : String ) : integer ;
var
   aicon:TIcon;
   FileInfo: SHFILEINFO;
 begin

   aicon:=TIcon.Create;
   try
     

    SHGetFileInfo(PChar(fname), 0, FileInfo, SizeOf(FileInfo), SHGFI_ICON);
     aicon.Handle:= FileInfo.hIcon;

     Result:= im.AddIcon(aicon);

     aicon.Free;



   finally
aicon.Free;
   end;


end ;
Если среди иконок есть большие , то отображается только половина иконки ,а если все иконки большие, то все отображается правильно.
Сидоров вне форума Ответить с цитированием
Старый 02.10.2014, 14:58   #2
indexx
Заблокирован
 
Регистрация: 12.09.2014
Сообщений: 544
По умолчанию

Ну и пили все одинаковые. Проблема увеличить холст иконки?
indexx вне форума Ответить с цитированием
Старый 02.10.2014, 15:05   #3
Сидоров
Пользователь
 
Аватар для Сидоров
 
Регистрация: 01.07.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от indexx Посмотреть сообщение
Ну и пили все одинаковые. Проблема увеличить холст иконки?
Они будут не будут не красивые ,если их растянуть.на рабочем столе Windows 7 если у приложение не большой иконки ,то он растягивает окружность иконки ( но не спаму иконку) http://i65.fastpic.ru/big/2014/1002/...1b9a222ec7.png
Мне тоже так нужно .Этот код для VLC например получит иконку 32Х32.А мне нужны большие иконки без растягивания
Сидоров вне форума Ответить с цитированием
Старый 02.10.2014, 15:17   #4
indexx
Заблокирован
 
Регистрация: 12.09.2014
Сообщений: 544
По умолчанию

Так я не говорю растягивать изображение. Холст увеличь.
indexx вне форума Ответить с цитированием
Старый 02.10.2014, 15:37   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Компонент есть TSysImageList. Кому спиратить копию?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 02.10.2014, 16:36   #6
Сидоров
Пользователь
 
Аватар для Сидоров
 
Регистрация: 01.07.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Компонент есть TSysImageList. Кому спиратить копию?
нашёл здесь
http://expert.delphi.int.ru/download/answers/4289/
только и то ссылка мертвая.Кстати я человека который выкладывал файл ник как у вас ) Файл загружен участником: min@y™
Он платный ?я так понимаю Re:Кому спиратить копию?

Последний раз редактировалось Сидоров; 02.10.2014 в 17:00.
Сидоров вне форума Ответить с цитированием
Старый 02.10.2014, 16:46   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
нашёл здесь
http://expert.delphi.int.ru/download/answers/4289/
только и то ссылка мертвая.Кстати я человека который выкладывал файл ник как у вас ) Файл загружен участником: min@y™
Дык эт я и есть.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 02.10.2014, 16:57   #8
Сидоров
Пользователь
 
Аватар для Сидоров
 
Регистрация: 01.07.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от indexx Посмотреть сообщение
Так я не говорю растягивать изображение. Холст увеличь.
Сами иконки маленькие! Если сделать так
Код:

function TForm1 . ExtractIcon ( fName : String ) : integer ;
var
   aicon:TIcon;
   FileInfo: SHFILEINFO;
 begin

   aicon:=TIcon.Create;
   try
     aicon.Height := 128;//Изменения
     aicon.Width := 128;//Изменения

    SHGetFileInfo(PChar(fname), 0, FileInfo, SizeOf(FileInfo), SHGFI_ICON);
     aicon.Handle:= FileInfo.hIcon;

     Result:= im.AddIcon(Application.Icon);//Изменения

     aicon.Free;

   finally
Aicon.Free;
   end;
то все иконки будут 128Х128 ()
aicon.Height := 128;
aicon.Width := 128;

Если я правильно понимаю , то когда на рабочем столе увеличиваем иконки Windows считает из res файла приложения иконку побольше .
У лазарус приложения в res файле есть иконки от 16 до 128 .Так вот вопрос темы как читать их с res файла чужого Exe. Так яснее?

Последний раз редактировалось Сидоров; 02.10.2014 в 17:07.
Сидоров вне форума Ответить с цитированием
Старый 02.10.2014, 17:02   #9
Сидоров
Пользователь
 
Аватар для Сидоров
 
Регистрация: 01.07.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Дык эт я и есть.
К сожалению, срок хранения файла истёк и файл недоступен.
Сидоров вне форума Ответить с цитированием
Старый 02.10.2014, 17:08   #10
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
К сожалению, срок хранения файла истёк и файл недоступен.
Тебя в гугле, штоль, забанили?
Качай с сайта автора.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Большие иконки в трей меню unclebenedict Общие вопросы Delphi 2 30.03.2012 21:33
Смена иконки постороннего exe Lauri Общие вопросы Delphi 3 20.10.2011 21:51
Ошибка и правельная загрузка иконки exe файла в Delphi TaYgA Помощь студентам 0 30.10.2009 20:51
Изменение иконки у чужого exe Gr@nd Общие вопросы Delphi 3 27.07.2009 11:33
Замена иконки у .exe приложения NebsteR Свободное общение 2 17.03.2009 09:23