Главная страница
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.023 c
15-1185193316
de.
2007-07-23 16:21
2007.08.19
О спутниковом интернете


2-1185515794
click
2007-07-27 09:56
2007.08.19
FindFirst_FindNext & Filter


15-1184648259
vajo
2007-07-17 08:57
2007.08.19
DVD-RW перестал читать не DVD диски


3-1178376659
logslava
2007-05-05 18:50
2007.08.19
как в запросе определить номер записи?


6-1168162326
_darksidenv
2007-01-07 12:32
2007.08.19
Winsock API и accept