powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как заставить реагировать кнопку при наведении мышки
13 сообщений из 13, страница 1 из 1
Как заставить реагировать кнопку при наведении мышки
    #37584167
donpauls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Какой метод кнопки нужно применить, чтобы например, при наведении мыши она меняла надпись с "Command1" на "Нажми меня"
Думаю, что это должно быть Command1_MouseMove - но не могу разобраться как его использовать: при наведении надпись изменяется, но не возвращается обратно..

Код: vbnet
1.
2.
3.
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Command1.Caption = "Нажми меня!"
End Sub
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584168
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donpaulsДумаю, что это должно быть Command1_MouseMove - но не могу разобраться как его использовать: при наведении надпись изменяется, но не возвращается обратно..Это потому что MouseMove происходит только когда мышь находится над виджетом. Как только мышь выходит за его пределы MouseMove этому виджету больше не посылается.
Тебе нужны Enter и Leave события.
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584176
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlТебе нужны Enter и Leave события....которых нет в VB6...
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584180
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProWhite OwlТебе нужны Enter и Leave события....которых нет в VB6...VB.Net зато есть.
А если у TC действительно VB6, то можно поймать MouseMove на родительском контейнере и этим реализовать Enter/Leave: Если сработал MouseMove на контейнере потом на виджете - значит Enter, если на виджете потом на контейнер - Leave.
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584426
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно поймать MouseMove на родительском контейнереА можно не поймать, если мышка движется быстро. Ненадежный это способ, нужно сабклассить. Кажется есть WM-событие типа leave.
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584591
donpauls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White OwlShocker.Proпропущено...
...которых нет в VB6...VB.Net зато есть.
А если у TC действительно VB6, то можно поймать MouseMove на родительском контейнере и этим реализовать Enter/Leave: Если сработал MouseMove на контейнере потом на виджете - значит Enter, если на виджете потом на контейнер - Leave.

Спасибо, это идея!
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584651
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот один из простых и оригинальных вариантов на VB6
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584843
donpauls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_Oneвот один из простых и оригинальных вариантов на VB6

Интересно, но русские буквы отображаются кракозябликами..
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584943
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну так что-то делаешь не так =)
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584964
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так и должно быть?
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37584987
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Некорректно работает с двумя мониторами. Если основной справа, а форма на левом, то тултип появляется прижатым к левому краю правого монитора.
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37585008
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пример для арабских стран вывод справо налево. (пример для них, фразы арабские)
про конфигурацию с двумя мониторами не в курсе, не проверял, думаю, что там можно подправить координаты вывода окна
...
Рейтинг: 0 / 0
Как заставить реагировать кнопку при наведении мышки
    #37585735
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariyможно поймать MouseMove на родительском контейнереА можно не поймать, если мышка движется быстро. Ненадежный это способ, нужно сабклассить. Кажется есть WM-событие типа leave.Да, если контейнер слишком узкий а мышь бежит быстро - она может "перепрыгнуть" через контейнер.
По хорошему действительно надо на виджете ловить WM_MOUSELEAVE, но я никогда этого в VB не делал - не уверен насколько это просто.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как заставить реагировать кнопку при наведении мышки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]