Главная страница
    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.45 MB
Время: 0.033 c
9-1088003860
3d_Vorpos
2004-06-23 19:17
2004.10.24
Проекция на плоскость эксрана точки в пространстве.


1-1097223451
Аня
2004-10-08 12:17
2004.10.24
Архивация


1-1096952667
Schummi
2004-10-05 09:04
2004.10.24
Многомерный массив


1-1097488106
prorok2
2004-10-11 13:48
2004.10.24
Статистические компоненты


1-1096810509
TeNY
2004-10-03 17:35
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский