|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.11.2009, 21:20 | #1 |
Пользователь
Регистрация: 19.11.2009
Сообщений: 13
|
Как лучше узнавать, что мышь находится над окном (или частью окна)?
Пробую создавать свою первую программу "на чистом Win32API" (с) в Делфи7...
Планирую делать полностью свой интерфейс (кнопочки там необычные, окно нестандартной формы итд). Как так делают в профессиональных программах не представляю, а посему просто "рисую" битмапы на форме. Так вот хотелось бы сделать так, чтоб при наведении мышью на кнопку последняя как бы "подсвечивалась"... Проверил пару подобных "расфуфыренных" профессиональных программ - некоторые используют для кнопок и других элементов окна класса "Static", а некоторые по видимому просто рисует всё на форме (как делаю и я)... Не знаю как лучше... В принципе можно проверять координаты мыши (по таймеру или при WM_PAINT) и если попадает на кнопку (на статик или в область/регион кнопки) - рисовать подсвеченную. Но мне кажется это как бы нерациональным, да и только одна из программ так делает, остальные как-то по другому "палят" где курсор... Посоветуйте, пожалуйста... Как лучше узнавать, что мышь находится над окном (или частью окна)?
Долой готовые компоненты! Учите «Win32API»!
|
27.11.2009, 21:39 | #2 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
пробуйте вариант от Alex Cones
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
27.11.2009, 21:59 | #3 |
Пользователь
Регистрация: 19.11.2009
Сообщений: 13
|
Так это и есть через проверку координат... Как же тогда другие программы делают?
Долой готовые компоненты! Учите «Win32API»!
|
27.11.2009, 21:59 | #4 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
|
|
27.11.2009, 22:05 | #5 |
Пользователь
Регистрация: 19.11.2009
Сообщений: 13
|
Это если кнопки из статиков делать?
Спасибо, попробую...
Долой готовые компоненты! Учите «Win32API»!
|
27.11.2009, 22:25 | #6 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Она фришная, лежит в инете. Последний раз редактировалось mihali4; 28.11.2009 в 00:26. |
|
28.11.2009, 00:25 | #7 | ||
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Цитата:
Если так, то наверное лучше всё-таки по координатам курсора... А то так и так сверять с координатами объекта придётся... А что значит Цитата:
Можно попробовать делать через Static с картинкой... Вот из одного тестового проекта: Код:
Во всяком случае удобнее чем вручную, хотя получится много дочерних окон... Не уверен как лучше делать... Вот только регионы не получается задать, да и статик принимает размеры битмапа (не растягивается)... Хотя "MS Spy++" показывает что регион задался.....
I am the First of Cyber Evolution...
I am the First to Program your Future... |
||
14.02.2010, 05:45 | #8 |
Пользователь
Регистрация: 19.11.2009
Сообщений: 13
|
Через CM_MOUSEENTER и CM_MOUSELEAVE как-то фигово получается. Намудрил наверное что-то...
Подсказали вот попробовать через TRACKMOUSEEVENT - так не лучше будет, как думаете? Перекрываю половину кнопки другим окном (например блокнотом) и смотрю реагирует ли кнопка на курсор если он как бы над кнопкой, но над блокнотом. Просто ищу способ как правильнее и рациональнее...
Долой готовые компоненты! Учите «Win32API»!
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что лучше выбрать или чем удобнее) | PilGrim | Общие вопросы C/C++ | 6 | 12.08.2015 10:46 |
Что лучше изучать Php или javascript? | Arassir | PHP | 15 | 14.07.2009 19:21 |
Подсветить или покрасить строку в dbgrid, над которой находится курсор | Artik | БД в Delphi | 4 | 12.06.2009 20:43 |
Что лучше assembler или с++? | Alabay | Помощь студентам | 13 | 11.01.2009 12:21 |