Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.08.19;
Скачать: [xml.tar.bz2];

Вниз

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

 
Чаво   (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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.042 c
15-1184842707
EGFEFG
2007-07-19 14:58
2007.08.19
Компьютер сам презагружается


1-1181138897
Tonich
2007-06-06 18:08
2007.08.19
Delphi и С++ Builder 5


15-1184868247
oxffff
2007-07-19 22:04
2007.08.19
БАГ компилятора в конструкторе с Open Array


8-1162988356
DesWind
2006-11-08 15:19
2007.08.19
Подавление частоты.


5-1159542115
ProgRAMmer Dimonych
2006-09-29 19:01
2007.08.19
Отлов клавы в одной процедуре





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский