Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Вниз

ExtractIcon   Найти похожие ветки 

 
kukuikar ©   (2004-09-18 10:03) [0]

подскажите плиз
как избавиться от того что при извлечении иконки (ExtractIcon) из файла shell32.dll или из любой другой библиотеки XP, она становиться не такой как в DLL, т.е. количество цветов уменьшается и выглядит она страшно?


 
Alx2 ©   (2004-09-18 10:23) [1]

>kukuikar ©   (18.09.04 10:03)
У меня нормально отображается. Может, тебе стоит код показать?


 
kukuikar ©   (2004-09-20 09:07) [2]

прорисовка иконок происходит в TStringGrid.
Я наверное неточно сыормулировал вопрос:
прис охранении иконки в файл *.ico она теряет какое-то количество цветов и выглядит непотребно. А в стринг гриде она выглядит нормально, как и должна.

var
icons: TStringGrid;
DrawIcon: TMenuItem;
SaveIcon: TMenuItem;

procedure TForm1.DrawIconClick(Sender: TObject);
var
CurItem: longint;
pName: array [ 0..255 ] of char;
fName: string [ 13 ];
N: word;
IcoH: hIcon;
path: String;
FileLst: TStringList;
begin
GetDir(0, path);
CurItem:=0;
if OpenDialog1.Execute then
begin
fName:=ExtractFileName(OpenDialog1.Filename);
StrPCopy ( pName, OpenDialog1.Filename );
N := 0;
with Icons do
repeat
IcoH := ExtractIcon ( hInstance, pName, N );
if IcoH > 1 then
begin
Col := CurItem MOD ColCount;
if ( CurItem DIV ColCount ) >= RowCount then
RowCount := RowCount + 1;
Row := CurItem DIV ColCount;
Cells [Col,Row] := Format("#%d",[CurItem+1]);
Objects [ Col, Row ] := TIcon.Create;
with Objects [ Col, Row ] AS TIcon do
Handle := IcoH;
CurItem := CurItem + 1;
Inc ( N );
end;
until IcoH <= 1;
end;
end;

....

procedure TForm1.SaveIconClick(Sender: TObject);
begin
if SaveDialog1.Execute then
with Icons do
with Objects [Col, Row] AS TIcon do
SaveToFile(SaveDialog1.Filename);
end;


 
kukuikar ©   (2004-09-20 09:12) [3]

1


 
kukuikar ©   (2004-09-20 10:11) [4]

что никто не хочет помочь?


 
kukuikar ©   (2004-09-20 11:54) [5]

Удалено модератором
Примечание: Не надо флудить.


 
Cobalt ©   (2004-09-21 01:18) [6]

Может, проблема в сохранении? Посмотри, как сохраняется иконка, насколько я помню - в Дельфёвых компонентах есть какое-то ограничение на 16 цветов, но неуверен.
В лющем, исходники тебе доступны - ищи и да обрящеши!



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.031 c
4-1095848047
S@shka
2004-09-22 14:14
2004.10.24
передача управления другому приложению


10-1051092870
sniknik
2003-04-23 14:14
2004.10.24
Какого клиента коннект? Midas.


1-1097049347
456
2004-10-06 11:55
2004.10.24
создать кнопку (на форме) во время работы программы


1-1097491359
andrey__
2004-10-11 14:42
2004.10.24
Автозапуск и интерфейс приложения!!!


1-1097111765
vvip
2004-10-07 05:16
2004.10.24
Запуск одной копии приложения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский