Легко? Хорошо.
У меня была аналогичная проблема лет назад, и ответ, который я использовал, был пользовательским курсором.
Это решение работает в Delphi и должно теоретически работать в Lazarus (но см. http://forum.lazarus.freepascal.org/index.php?topic=32861.0), но в любом случае, возможно, это поможет вам найти свое окончательное решение.
Процесс в двух словах:
1) вам нужен файл курсора, mycursor.cur. Вы можете найти его в сети, в области delphi существует/есть утилита, которая позволит вам ее создать.
2) Создайте текстовый файл, такой как mycursor.rc (rc - это файл без компиляции).
3) В этом примере у него будет одна строка: myCUR CURSOR «mycursor.cur», все эти файлы должны находиться в основной папке программы.
4) Это необходимо скомпилировать в файл .res (mycursor.res), см. http://wiki.freepascal.org/Lazarus_Resources, в Delphi этот файл есть/был brcc32.exe. Ссылка выше объясняет процесс для лазаря, я его не тестировал.
5) Затем нужно поместить строку в коде, основная форма в порядке, как это:
{$ R} mycursor.res Дельфи стиль; (предкомпилированный файл ресурсы)
{$ R mycursor.rc} lazarus style (он будет/должен быть скомпилирован для вас). Почти готово.
6) В настоящее время в FormCreate пут:
(Delphi :) screen.cursors [1]: = LoadCursor (HINSTANCE, PChar ('myCUR')); (используйте имя, которое вы дали ему в rc-файле. cursors idx 1 to 32000 являются определяемыми пользователем, но здесь вам придется играть вокруг Lazarus, это немного по-другому, еще раз посмотрите, что ссылка выше).
7) Наконец, назначьте курсор вашему управлению: Richedit1.Cursor: = 1;
HTH.