Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Записать изображение активного курсора в файл   Найти похожие ветки 

 
Igorek ©   (2004-04-13 15:56) [0]

После нескольких часов копания в MSDN, Хелпах, и FAQ DelphiWorld не могу решить следующую задачу: как записать изображение активного в данный момент курсора в файл? Пока имею такой код:

procedure SaveCursor(FileName: string);
var
 HCur: HCursor;
 II: _IconInfo;
 B: TBitmap;
begin
 HCur := GetCursor;
 if GetIconInfo(HCur, II) then
 begin
   B := TBitmap.Create;
//      B.Handle := II.hbmColor;
//      BitBlt(B.handle, II.)
   B.SaveToFile(FileName);
   FreeAndNil(B);
 end;
end;

На закомментированном участке споткнулся. Дело также в том, что данный курсор использует компонент стороннего разработчика и он у него не содержится в ресурсе, потому я просто так не могу его вытянуть.


 
Igorek ©   (2004-04-13 16:32) [1]

Докопался до такого:
 procedure SaveCursor(F: string);
 var
   HCur: HCursor;
   II: _IconInfo;
   B: TBitmap;
 begin
   HCur := GetCursor;
   if GetIconInfo(HCur, II) then
   begin
     B := TBitmap.Create;
     B.Width := 32;
     B.Height := 32;
     DrawIconEx(B.Handle, 0, 0, HCur, 32, 32, 0, 0, DI_NORMAL);
     B.SaveToFile(F);
     FreeAndNil(B);
   end;
 end;

Но получаю только белый квадрат.


 
Igorek ©   (2004-04-13 16:39) [2]

Все решил. Всем спасибо. Кому интересно - код:
 procedure SaveCursor(F: string);
 var
   HCur: HCursor;
   II: _IconInfo;
   B: TBitmap;
 begin
   HCur := GetCursor;
   if GetIconInfo(HCur, II) then
   begin
     B := TBitmap.Create;
     B.Width := 32;
     B.Height := 32;
     DrawIconEx(B.Canvas.Handle, 0, 0, HCur, 32, 32, 0, 0, DI_NORMAL);
     B.SaveToFile(F);
     FreeAndNil(B);
   end;
 end;



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

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.064 c
3-1081325944
CASPER
2004-04-07 12:19
2004.05.02
Как скопировать данные из одной базы Access в другую.


14-1081088912
Гаврила
2004-04-04 18:28
2004.05.02
Постоянная работа для программера в Москве


3-1081178285
olhovik
2004-04-05 19:18
2004.05.02
Добавление записи в файл


14-1081411081
[lamer]Barmaglot
2004-04-08 11:58
2004.05.02
Мультихагрузочная система...


4-1078919288
RyDmi
2004-03-10 14:48
2004.05.02
Определение текущего пользователя.