Форум: "Основная";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
ВнизПодскажите почему не работает ExtractIcon Найти похожие ветки
← →
chili (2005-07-27 14:43) [0]Добрый день..
Подскажите почему не работает ExtractIcon
procedure TMainForm.FormCreate(Sender: TObject);
var
Icon : TIcon;
begin
Icon.Handle := ExtractIcon(Application.Handle, PChar("c:\windows\notepad.exe"), Word(0));
RxSpeedButton1.Glyph.Canvas.Draw(0,0,Icon);
Icon.Free;
end;
Или это только у меня не работает?????????
← →
chili (2005-07-27 14:45) [1]
procedure TMainForm.FormCreate(Sender: TObject);
var
Icon : TIcon;
begin
Icon := TIcon.Create;
Icon.Handle := ExtractIcon(Application.Handle, PChar("c:\windows\notepad.exe"), Word(0));
RxSpeedButton1.Glyph.Canvas.Draw(0,0,Icon);
Icon.Free;
end;
← →
chili (2005-07-27 14:49) [2]У всех работает или никто не знает почему не работает?
← →
Юрий Зотов © (2005-07-27 14:50) [3]Вы указываете не тот хэндл (окна, а не приложения). Замените Application.Handle на HInstance.
← →
chili (2005-07-27 14:53) [4]Юрий Зотов © (27.07.05 14:50) [3]
Пробовал так :
Icon.Handle := ExtractIcon(HInstance, PChar("c:\windows\notepad.exe"), Word(0));
и
Icon.Handle := ExtractIcon(0, PChar("c:\windows\notepad.exe"), Word(0));
Все равно не работает :(((
← →
alex-drob © (2005-07-27 15:06) [5]
> chili (27.07.05 14:43)
А может ExtractIcon работает. А проблемма в чемто другом. Попробуй на Canvas формы вывести например в событии onpaint.
← →
Юрий Зотов © (2005-07-27 15:08) [6]> chili (27.07.05 14:53) [4]
Думаю, что загрузка все же работает. Не работает отрисовка (что и не мудрено при таком коде). Используйте не Draw, а Assign.
← →
chili (2005-07-27 15:10) [7]не помогло
← →
MBo © (2005-07-27 15:11) [8]работает:
procedure TForm1.Button3Click(Sender: TObject);
var Icon:TIcon;
begin
Icon := TIcon.Create;
Icon.Handle := ExtractIcon(0, PChar("c:\windows\notepad.exe"), Word(0));
DrawIcon(Canvas.Handle,0,0,Icon.Handle);
Icon.Free;
end;
← →
chili (2005-07-27 15:17) [9]MBo © (27.07.05 15:11) [8]
А как это на SpeedButton вставить?
← →
chili (2005-07-27 15:39) [10]Юрий Зотов © (27.07.05 15:08) [6]
А что в Assign записывать?
← →
MBo © (2005-07-27 16:03) [11]Ну так работает. может, и проще можно.
b:=TBitmap.Create;
b.Width:=Icon.Width;
b.Height:=Icon.Height;
DrawIcon(b.Canvas.Handle,0,0,Icon.Handle);
SpeedButton1.Glyph.Assign(b);
← →
chili (2005-07-27 16:08) [12]MBo © (27.07.05 16:03) [11]
>Ну так работает. может, и проще можно.
Да работает, только исключение вызывает................
Все равно большое Вам спасибо за помошь.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.01 c