Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.19;
Скачать: CL | DM;

Вниз

Как принудительно обновить курсор?   Найти похожие ветки 

 
Чаво   (2007-07-20 03:37) [0]

Я делаю рамочку, которую можно было бы масштабировать мышкой. При наведении на рамочку курсор становится с виде стрелочек туда-сюда. Беру, например, рамочку за левый верхний угол, и опускаю её так, что он становится левым нижним. При этом картинку курсору нужно поменять. Я её меняю. Но пока я не отпущу левую кнопку мыши, реально изображение курсора почему-то остаётся тем же. Как быть? Как его принудительно обновить?


 
boa_kaa ©   (2007-07-20 08:38) [1]

Следить за позицией мыши.
Менять курсор.


 
ЮЮ ©   (2007-07-20 08:45) [2]

Cursor есть у TControl и у TScreen. Чтобы он менялся сразу, надо менять Screen.Cursor


 
Чаво   (2007-07-22 01:17) [3]


> ЮЮ ©   (20.07.07 08:45) [2]
>
> Cursor есть у TControl и у TScreen. Чтобы он менялся сразу,
>  надо менять Screen.Cursor


Но тогда такой курсор ставится всему окну, а не отдельному контролу.


 
Юрий Зотов ©   (2007-07-22 12:17) [4]

> Чаво   (20.07.07 03:37)

Рамочка рисованная, или это оконный контрол?

Если первое, то только ручками. Если второе, то посмотрите сообщение WM_NCHITTEST.


 
wicked ©   (2007-07-22 19:08) [5]


> Но пока я не отпущу левую кнопку мыши, реально изображение
> курсора почему-то остаётся тем же. Как быть? Как его принудительно
> обновить?

мои догадки
если ничего из вышеперечисленного не поможет, тогда убери значение csCaptureMouse из ControlStyle:
Exclude(myPanel.ControlStyle, csCaptureMouse)

почему: потому что при нажатии мышкой контрол захватывает мышь, а код, меняющий курсоры, следит за этим и не дает поменять картинку курсора для захваченной мыши

могу ошибаться, но я на это наталкивался когда то и решал именно так


 
Чаво   (2007-07-23 03:48) [6]


> Юрий Зотов ©   (22.07.07 12:17) [4]
>
> > Чаво   (20.07.07 03:37)
>
> Рамочка рисованная, или это оконный контрол?

Рисованная.


> Если первое, то только ручками.

В смысле?


> wicked ©   (22.07.07 19:08) [5]
> > Но пока я не отпущу левую кнопку мыши, реально изображение
> > курсора почему-то остаётся тем же. Как быть? Как его принудительно
> > обновить?
>
> мои догадки
> если ничего из вышеперечисленного не поможет, тогда убери
> значение csCaptureMouse из ControlStyle:
> Exclude(myPanel.ControlStyle, csCaptureMouse)

Попробую!



Страницы: 1 вся ветка

Текущий архив: 2007.08.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.031 c
2-1185191496
gen
2007-07-23 15:51
2007.08.19
Прошу помощи мастера


5-1160122325
BadTester
2006-10-06 12:12
2007.08.19
Имеется задача pеализовать выдвижную панель на экpане


2-1185515172
Кирей
2007-07-27 09:46
2007.08.19
Ошибка при добавлении записи в таблицу


15-1184769735
Иксик
2007-07-18 18:42
2007.08.19
Молдавия спасена


3-1178186695
Slider007
2007-05-03 14:04
2007.08.19
Интерфейс для создания документа