![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Romero |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 17.6.2005 Репутация: нет Всего: 1 |
Подскажите, как показывать подсказку формы, если форма неактивна?
То есть нужно вывести обычный виндовый хинт при наведении курсора на форму. Делал через onmouseover и THintWindow, но не знаю, как убирать подсказку при покидании курсором границ формы. Это сообщение отредактировал(а) Romero - 16.9.2006, 09:28 |
|||
|
||||
| Palladin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 932 Регистрация: 15.5.2007 Где: Беларусь г.Гомель Репутация: 3 Всего: 17 |
Запоминай координаты формы при активации, потом считывай координаты курсора если курсор вышел за предел то скрываеш подсказку чё сложного-то?
-------------------- Глуп тот кто полагается на истину авторитета, а не на авторитет истины [color=red]KAV&KIS==Evil[/color] |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Сделать обработчики событий
CM_MOUSEENTER CM_MOUSELEAVE -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Romero |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 17.6.2005 Репутация: нет Всего: 1 |
RooR, ты предлагаешь при каждом выводе подсказки проверять координаты? А если форма сдвинулась или изменила размер - снова координаты запоминать?
Кроме того в описанном мной способе есть существенное отличие от стандартной подсказки - она бегает за курсором при его передвижении в пределах формы. Это неудобно, хотелось бы просто запустить вывод обычной подсказки при наведении на форму, и пущай она сама пропадает через несколько секунд. Если непонятно, о чем я говорю - примером будет виндовый QuickLaunch. При наведении на любой ярлык появляется хинт, НЕ ПЕРЕМЕЩАЕТСЯ за курсором при передвижении в пределах размеров значка и ИСЧЕЗАЕТ САМ при покидании пределов значка. alexeis1, не раз писали на многих форумах об этих событиях - при резком движении мышью они не срабатывают. |
|||
|
||||
| Romero |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 17.6.2005 Репутация: нет Всего: 1 |
Чтобы было понятнее, о чем я говорю:
Создайте форму и задайте ей hint (и showhint в true). Если навести на нее мышью - появится подсказка (именно в том месте, где был курсор при срабатывании события), которая не будет перемещаться за куросором и исчезнет после некоторого времени (до следующего срабатывания события). Если же теперь сделать форму неактивной - хинт не покажется. Вот, а хотелось бы Это сообщение отредактировал(а) Romero - 24.9.2006, 08:39 |
|||
|
||||
| Alexeis |
|
||||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Да к сожалению я наблюдал такую ситуацию сам... Есть идея
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
||||
|
|||||
| Romero |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 17.6.2005 Репутация: нет Всего: 1 |
Мда, нехило! Слишком сложная идея. Неужели проще нет вариантов?
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Romero, ну сложность заключается в том что сообщения о перемещения мыши отправляются форме только когда курсор на ней, а если мы резко дернем мышью, то курсор в один момент был на форме, вдругой исчез. В этом случае у пиложения есть неопределенность, то ли мышка не двигается, то ли она ушла с формы. В обоих случаях нет сообщений о перемещении над формой. Отсюда вывод, что нам нужны сообщения вне формы. Этот способ как раз и позволяет получить журналированые сообщения о перемещении мыши вне окна.
Так что тут вот такие ограничения. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |