Собственные курсоры в программе
|
Компьютерный магазин в каком-то городе. Заходит старушка, подходит к прилавку и говорит:
- Извините, я у вас коврик для мыши купила, так вот он не работает!
Продавцы в совершенном ох#ении смотрят на бабулю:
- Это как?
А бабуля и отвечает:
- Как как, сколько я его в сарай не клала, ни одной мыши не попалось. Может, его ядом посыпать, или приманку какую?
|
В этой статье вы найдёте несколько способов использования собственных курсоров, в том числе и анимированных.[это файлы с расширением .ani]
Например, у вас есть какой-то файл с расширением .ani и вы хотите его задействовать. Всё, что вам для этого потребуется сделать, это - поместить файл в тот же каталог, где будет ваш exe, а затем написать следующий код, ну, скажем, по нажатию на кнопку:
Screen.Cursors[5] := LoadCursorFromFile('File.ani');
Screen.Cursor := 5;
|
Здесь используется свойство Cursors глобального объекта Screen. В нём содержится список курсоров, доступных приложению. По индексу в нужную позицию мы загружаем курсор из файла. А затем с помощью свойства Cursor задействуем его.
Если же вы имеете файл ресурсов, тогда дела будут обстоять иначе:
Помещаете этот файл в тот же каталог, что и exe. Затем в модуле объявляем глобальную константу, например после
Выглядеть это будет примерно так:
var
Form1: TForm1;
const
MyConst = 100;
|
С помощью этой константы мы зарезервируем новую позицию в свойстве Cursors глобального объекта Screen.
После чего подключаем файл ресурсов, т.е. если он у нас называется Cursors.res, тогда после
напишем:
Затем, допустим, по нажатию на кнопку пишем код:
Screen.Cursors[MyConst] := LoadCursor(hInstance,'MYCURSOR');
Screen.Cursor := MyConst;
|
Здесь 'MYCURSOR' - это имя курсора, который нам необходимо загрузить. Обратите внимание, если вы создаёте файл ресурсов самостоятельно, а сделать это можно с помощью утилиты "ImageEditor", вам необходимо в именах курсоров использовать только прописные буквы.
|