Страница 1 из 1
Загрузка произвольного курсора из файла
Добавлено: 30.01.2011 01:55:55
Padre_Mortius
Подскажите, возможно ли использование внешних файлов с курсорами. Интересует кросплатформенный вариант. Гугление по данному поводу ничего не дало. Буду признателен за простой пример.
Re: Загрузка произвольного курсора из файла
Добавлено: 30.01.2011 09:27:26
Павел Ишенин
Простой пример лежит в examples\cursors
Re: Загрузка произвольного курсора из файла
Добавлено: 30.01.2011 12:46:34
Padre_Mortius
В примере используется загрузка из ресурсов. Хотелось бы возможность на лету менять курсор без перекомпиляции проекта.
Re: Загрузка произвольного курсора из файла
Добавлено: 30.01.2011 14:20:34
Nik
В Windows можно сделать так:
http://lazarus.su/other/zagruzka-kursora-iz-fayla.htmlКросс-платформенный способ, увы, не знаю.
Re: Загрузка произвольного курсора из файла
Добавлено: 30.01.2011 14:29:55
Mr.Smart
Пишем свою следующую функцию (не забыв добавить модуль
LCLType):
Код: Выделить всё
function LoadCursorFromFile(const aFileName: String): HCURSOR;
var
cur: TCursorImage;
begin
cur:=TCursorImage.Create;
cur.LoadFromFile(aFileName);
Result:=cur.ReleaseHandle;
cur.Free;
end;
после вызываем:
Код: Выделить всё
...
if OpenDialog1.Execute then
begin
Screen.Cursors[1]:=LoadCursorFromFile(UTF8ToSys(OpenDialog1.FileName));
Panel1.Cursor:=1;
end;
...
Re: Загрузка произвольного курсора из файла
Добавлено: 15.07.2015 12:53:28
Лекс Айрин
что-то не заработал сей способ(((
Добавлено спустя 1 час 25 минут 24 секунды:но все заработало, когда оформил все одной процедурой.
Код: Выделить всё
procedure TMainForm.MenuItemCursorClick(Sender: TObject);
Var
Cur: TCursorImage;
begin
if OpenDialogCursor.Execute then
begin
Cur := TCursorImage.Create;
try
Cur.LoadFromFile(UTF8ToSys(OpenDialogCursor.FileName));
Screen.Cursors[1024] := Cur.ReleaseHandle;
finally
Cur.Free;
end;
Screen.Cursor := 1024;
end else begin end;
end;