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

Вниз

Замена курсора средствами CLX   Найти похожие ветки 

 
goliath ©   (2004-10-11 10:15) [0]

Добрый день.

  Подскажите пожалуйста как заменить стандартный курсоры мыши средствами CLX.

 Пример, который я скачал с сайта Borland  не работает.

var
 BitsBmp: QBitmapH;
 MaskBmp: QBitmapH;
 CusorHandle: QCursorH;

const
 Bits: array[1..32*4] of Byte = (
   $FF,$FF,$FF,$FF,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$FF,$FF,$FF,$FF,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$FF,$FF,$FF,$FF
 );

 Mask: array[1..32*4] of Byte = (
   $FF,$FF,$FF,$FF,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$FF,$FF,$FF,$FF,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$C0,$01,$80,$03,
   $C0,$01,$80,$03,$C0,$01,$80,$03, $C0,$01,$80,$03,$FF,$FF,$FF,$FF
 );

begin
 BitsBmp := QBitmap_create(32, 32, @Bits, False); // !!!exeption
 MaskBmp := QBitmap_create(32, 32, @Mask, False); // !!!exeption
 
 CursorHandle := QCursor_create(BitsBmp, MaskBmp, 16, 16);
                                               // !!!exeption  
 QBitmap_destroy(BitsBmp);
 QBitmap_destroy(MaskBmp);
end;

Если же пытаюсь загрузить курсор из файла или из ресурсов, то получаю нормальный хэндл, назначаю его Screen.Cursors[crMy] и когда пытаюсь сделать, например? Form.Cursor := crMy, то получаю Access Violation по адресу Handle/

Как быть !!!???


 
goliath ©   (2004-10-12 09:58) [1]

Неужели никто не знает ????



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

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

Наверх




Память: 0.45 MB
Время: 0.034 c
1-1097248945
DelphiLexx
2004-10-08 19:22
2004.10.24
TComponentEditor


4-1095430012
Stefan
2004-09-17 18:06
2004.10.24
ini-файл в памяти


14-1096030700
Гаврила
2004-09-24 16:58
2004.10.24
Какие выбрать нааушники?


4-1095430666
Smart Crazy
2004-09-17 18:17
2004.10.24
Убить эту чёртову иконку в трее


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