Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.10.2010, 15:56   #1
Damien4Damien
 
Регистрация: 18.09.2010
Сообщений: 9
По умолчанию Изменение курсора

Имеется следующий код:
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var;
  CI : TCursorInfo;
begin
  CI.cbSize := SizeOf(CI);
  GetCursorInfo(CI);
  Image1.Picture.Icon.Handle := CI.hCursor;
  Label1.Caption := IntToStr(CI.hCursor);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Timer1.Interval := 40;
end;
Он выводит в форму изображение и идентификатор курсора.
Каким образом мне сейчас его изменить, чтобы он в новый лэйбл выводил сообщение "Курсор изменился", когда это действительно происходит?
Damien4Damien вне форума Ответить с цитированием
Старый 04.10.2010, 02:28   #2
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

У меня не выводит... Но это из-за CursorXP... Как-то по-левому сделана прога, почему бы просто не заменять системные курсоры? А она прячет настоящий курсор, инжектирует всем процессам свою dll и фиг знает что творит в них... =\\

Сделайте глобальную переменную и запоминайте последнее состояние... Если во время следующей проверки значение не равно предыдущему - то сообщайте...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 04.10.2010, 14:39   #3
Damien4Damien
 
Регистрация: 18.09.2010
Сообщений: 9
По умолчанию

Цитата:
Сделайте глобальную переменную и запоминайте последнее состояние...
Вчера пробовал таким способом - не получалось
Не могли бы написать именно код?
Сам затрудняюсь написать...
Damien4Damien вне форума Ответить с цитированием
Старый 04.10.2010, 16:03   #4
Alexei91
Заблокирован
Форумчанин
 
Аватар для Alexei91
 
Регистрация: 30.12.2009
Сообщений: 544
По умолчанию

Пишите процедуру типа
Код:
procedure TForm1.LC(p: integer; s: PAnsiChar);
begin
Screen.Cursors[p] := LoadCursor(HInstance,s);
Image1.Cursor:=TCursor(p);
end;
Вместо Image1 Ваш элемент,для кот. должен появляться Ваш курсор.
Пример использования
Код:
LC(2,'oval');
'oval' - имя курсора из файла *.res.
В коде формы подключите Ваш res-файл,например, {$R MyFile.RES}
Файл с ресурсами создаёте заранее,например в Image Editor (стандартный Борландовский: Меню Tool->Image Editor) - он будет содержать Ваши курсоры.
Если что-то не получится во вложении пример программы и скриншот. Писал 1,5-2 года назад,как курсовую. Тогда ещё много чего не знал(да и сейчас не всё знаю:),так что код очень корявый,но рабочий. Перед запуском программы скопируйте папку "КРАБ" на диск С.
Изображения
Тип файла: jpg Безымянный.JPG (57.5 Кб, 121 просмотров)
Тип файла: jpg Безымянный2.JPG (25.6 Кб, 138 просмотров)
Вложения
Тип файла: zip КР(NEW)!!!.zip (395.7 Кб, 36 просмотров)
Темы для WordPress. Русские WordPress шаблоны
Alexei91 вне форума Ответить с цитированием
Старый 04.10.2010, 18:08   #5
Damien4Damien
 
Регистрация: 18.09.2010
Сообщений: 9
По умолчанию

Спасибо большое за помощь) Очень благодарен всем
Damien4Damien вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение цвета текста при наведении курсора gred HTML и CSS 1 22.09.2010 10:48
Изменение курсора Syltan PHP 17 13.03.2010 18:45
Отследить изменение курсора в чужих окнах Lime Общие вопросы Delphi 2 02.07.2009 19:17
Перемещение курсора kykysya БД в Delphi 2 07.04.2009 20:33
Изменение вида курсора Manya Общие вопросы C/C++ 1 25.03.2009 13:42