Сообщений 0    Оценка 0        Оценить  
Система Orphus

Delphi Q&A

Автор: Tonal-
Источник: RSDN Magazine #5-2004
Опубликовано: 27.12.2002
Исправлено: 10.12.2016
Версия текста: 1.0
Q. Не могу загрузить анимированный курсор из ресурса:

Q. Не могу загрузить анимированный курсор из ресурса:

A. При загрузке из ресурсов приложения первым аргументом у LoadCursor должен быть HInstance (или Module.ResInstance, если предполагается использовать отдельную dll для ресурсов). С нулем она может загружать только стандартные курсоры.

Вот как это делается:

Curs.rc
51 21 "dinosaur.ani"
52 21 "horse.ani"
Unit1.pas
        procedure TForm1.FormCreate(Sender: TObject);
begin
  Screen.Cursors[1] := LoadCursor(HInstance, pChar(51));
  Screen.Cursors[2] := LoadCursor(HInstance, pChar(52));
end;

Компилятор ресурсов от Borland, похоже, не знает слова ANICURSOR, и создаёт ресурс с типом "ANICURSOR", а вот MS-овский создаёт ресурс с типом 21. Понятно, что LoadCursor не может найти наши ресурсы, даже если мы подали ему HInstance — он то просматривает тип 21.


Эта статья опубликована в журнале RSDN Magazine #5-2004. Информацию о журнале можно найти здесь
    Сообщений 0    Оценка 0        Оценить