Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Visual C++

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Арт
Гость





СообщениеДобавлено: Пт Фев 01 2002 12:40    Заголовок сообщения: Visual C++ Ответить с цитатой

Как на какой-то области (панели) сменить курсор на HandPoint(рука)?
Вернуться к началу
Alexy



Зарегистрирован: 22.10.2003
Сообщения: 48

СообщениеДобавлено: Пт Фев 01 2002 17:12    Заголовок сообщения: Re: Visual C++ Ответить с цитатой

Есть множество способов, самый простой из них - сделать нужный курсор классовым Smile
if(!SetClassLong(hWndShouldHasIt, GCL_HCURSOR, (LONG)::LoadCursor(IDC_HAND)))
{
//ругань суда пажалста
}
У этого способа очевидные достоинства - простота имплементации и полная автоматика
(не нужно возвращать старый курсор), но есть 2 крупных недостатка
1. все окна этого класса получат не прошеный курсор - марксизмом пованивает
2. сам способ не очень надёжен и может не работать

Другой способ - эмулировать события MOUSE_ENTER и MOUSE_LEAVE при помощи WM_NCMOUSEOVE
Если 'рука' будет зависать за пределами окна - придётся и timer добавить.

Успехов
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...