![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как извлечь иконку из файла причем любого и поместить ее на .. [D5, Win95/98, Win2k]
R © (2003-01-27 03:17:00)Как извлечь иконку из файла причем любого и поместить ее на ToolButton. Если в файл иконка не помещена как извлечь ее ассоциированную Windows иконку(например файлы *.doc имеют иконку Word и т.д. ).
R (2003-01-28 09:37:00) [1]Вопрос закрыт вышеприведенный код работает просто я по запарки создал две кнопки когда отлаживал и в каждой был один и тот же код а менял путь к файлу в обработчике которым не пользовался.
Спасибо разработчикам RxLib в ихних исходниках можно найти много полезного!
R (2003-01-28 09:24:00) [2]Мастера решение я нашел, но что то рботает как то коряво
может кто подправит,данный код все время помещает один и тот
же значек хотя используемые файлы я меняю и индексы иконок:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
IconHandle: HIcon;
Id: Word;
I:TIcon;
begin
I := TIcon.Create;
Id:=2;
IconHandle := ExtractAssociatedIcon(hInstance, "C:\Windows\Kodakimg.exe", Id);
I.Handle := IconHandle;
ImageList1.AddIcon(i);
end;
R (2003-01-28 06:18:00) [3]SOS!!!!!!!!!!!!!!!!!!!!!!!!!!!
Уважаемые мастера мне кто нибудь подскажет сколь-нибудь работоспособный пример помещения иконки извлеченной функцией
ExtractAssociatedIcon на ToolButton??????????????????
Или это военная таина?
R (2003-01-28 04:52:00) [4]>DVM ©
procedure TForm1.Button1Click(Sender: TObject);
var
Num:word;
Icon:Hicon;
begin
Num:=1;
icon:=ExtractAssociatedIcon(HInstance, "Файл",Num);
//Image1.Picture.Icon.Handle:=icon;вот это отрабатывает
DrawIconEx(SpeedButton1.Glyph.Canvas.Handle,1,
1,icon.Handle ,16,16,0,0,DI_NORMAL);//здесь на icon.Handle
//дает ошибку
//[Ошика] Unit1.pas(55): Record, object or class type required
//[Фотальная Ошибка] Project2.dpr(5):
//Could not compile used unit "Unit1.pas"
end;
DVM (2003-01-27 10:30:00) [5]Это для SpeedButton (дополнительно еще устанавливает размер иконки 16*16):
DrawIconEx(Btn.Glyph.Canvas.Handle,1,
1,MyIcon.Handle,16,16,0,0,DI_NORMAL);
Не помню есть ли у ToolButton Glyph, но принцип такой:
Есть Glyph - рисуй по его канве, нет - возьми DC
R (2003-01-27 10:25:00) [6]В инете все зациклено на один пример будто друг у друга копируют
uses ShellApi;
procedure TForm1.Button1Click(Sender: TObject);
var IconIndex : word;
h : hIcon;
begin IconIndex := 0;
h := ExtractAssociatedIcon(hInstance, "C:\WINDOWS\NOTEPAD.EXE", IconINdex);
DrawIcon(Form1.Canvas.Handle, 10, 10, h);
end;
А как на ToolButton????????????????????????
R (2003-01-27 10:18:00) [7]>alexnmsk ©
Пока еще не проверял.
>All
Что то мне о помещении иконки на ToolButton
никто не подсказывает. Отсюда вывод или это так просто, что не считают нужным или никто ни знает.
alexnmsk (2003-01-27 09:12:00) [8]Между прочим не проверял, нормально ли отображаются 256-цветные иконки?
R (2003-01-27 07:33:00) [9]Еще вопрос как поместить данную иконку на ToolButton. На форму могу,в Image тоже а вот на ToolButton что то не получается. Приведите пример если не трудно.
А (2003-01-27 04:55:00) [10]собс..но не за что! Любой дурак, типа меня, мог подкинуть эту идею, если бы был в инете в тот момент.
R (2003-01-27 04:44:00) [11]>A
Спасибо за подкинутую идею в самый раз то что надо.
R (2003-01-27 04:30:00) [12]Нет сейчас попробую.
А (2003-01-27 04:15:00) [13]ExtractAssociatedIcon не пробовал?