|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
25.01.2008, 12:08 | #22 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
B_N конечно с уважением но Вы я думаю ошибаитесь, если форму полностью накрыть компонентами просто ловить WM_MOUSEMOVE форма не будет, так что и обработчик никогда не прийдет... Конечно если попробывать как я говорил через Application в событии обработки сообщений...
|
25.01.2008, 12:46 | #23 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
А какой смысл закрывать одно окно другим? Можно тогда еще спрятать/дизабельнуть окно. Я понимаю прекрасно, о чем Вы - что делать, если курсор уйдет в Child Window. Ну и ничего страшного, смысл TrackMouseEvent - получить уведомление о том, что однажды побывавший в окне курсор покинул его "в каком-либо направлении" с помощью всего одного вызова, зачем придумывать лишние сложности? Дальше уже, по приходу этих сообщений, можно разбираться с ситуацией, как этого требует задача, может быть, например, с помощью GetWindowRect и GetCursorPos, чтобы выяснить, не ушел ли курсор в дочернее окно, может быть организовывать трэкинг уже в нем, может быть решать это средствами ООП, если это действительно нужно (что бывает редко). Application.ProcessMessage это просто сооружение из PeekMessage/TranslateMessage/DispatchMessage, собирающее сообщения для всех потоков данного процесса, ну и зачем там это проверять, если они всё равно придут каждое в свое окно? Если так все усложнять, можно понаставить глобальных хуков, переписать мышиный драйвер и т.д. Не знаю, в качестве эксперимента это всё здорово, конечно, но при написании реальных вещей такие приятные мелочи сильно экономят время. С разного рода "мигающими" кнопками, что в клиентской части окна, что в неклиентской, это работает прекрасно, проверено множество раз. Да и вообще, любую программную проблему можно решить многими способами, особенно под такой навороченой операционной системой, но обычно ищешь самый быстрый и безболезненный
|
25.01.2008, 12:54 | #24 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Господа, из всей этой демагогии с множеством правльных ответов мне непонятно одно: Зачем автору это надо?
Посему поскольку ответы даны в полной мере четкие я закрываю эту тему.
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Mouse самовольничает! | Altera | Компьютерное железо | 13 | 06.04.2008 19:26 |
TService+TForm | Viteef | Общие вопросы Delphi | 0 | 25.02.2008 08:13 |
Что означает TForm1 = class(TForm)>/STRONG> | metamfetamin | Помощь студентам | 6 | 11.11.2007 22:40 |