powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / вопрос по фокусу
7 сообщений из 7, страница 1 из 1
вопрос по фокусу
    #33807412
Denver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем утра. У меня следующий вопрос: на форме расположено несколько кнопок. Как определить, что в данный момент времени курсор мыши расположен, скажем над кнопкой command1, а не над command2. За ранее благодарен.
...
Рейтинг: 0 / 0
вопрос по фокусу
    #33807430
piva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
События MouseEnter MouseLeave
...
Рейтинг: 0 / 0
вопрос по фокусу
    #33813061
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Denver!

AMOUSEOBJ()

И, кстати, фокус (активный контрол) это одно - а над чем находится мышь -
это совсем другое.

MouseEnter/Leave появился лишь в VFP7 и конечно подходит не для всех задач
(иногда нужно определять над кем мыша висит "извне" этих самых объектов).

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по фокусу
    #33817752
Denver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Igor Korolyov
Hi Denver!

Добрый день, Игорь.

AMOUSEOBJ()

И, кстати, фокус (активный контрол) это одно - а над чем находится мышь -
это совсем другое.

Да мне было необходимо найти именно тот объект, над которым находится указатель мыши, а обработку вести извне самих объектов.

MouseEnter/Leave появился лишь в VFP7 и конечно подходит не для всех задач
(иногда нужно определять над кем мыша висит "извне" этих самых объектов).

Но мне не совсем понятно как работать с функцией AMOUSEOBJ(). Если я не ошибаюсь, она создает массив
1 - объект над которым в данный момент курсор
2 - Контейнер, который содержит этот объект
3,4 - координаты мыши

а как работать с самим объектом, который находится в 1-й строке массива, как его выбрать? Как его обработать?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по фокусу
    #33820571
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Denver!

> а как работать с самим объектом, который находится в 1-й строке массива,
> как его выбрать? Как его обработать?

Как угодно - первый элемент массива это объектная ссылка - т.е. через неё ты
можешь делать с объектом что угодно - и SetFocus вызвать и свойства его
считать/поменять...

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по фокусу
    #33820677
Denver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Игорь, доброе утро. У меня все равно ничего не получается

LPARAMETERS nButton, nShift, nXCoord, nYCoord
AMOUSEOBJ(mas)
IF mas[1].baseclass = 'Form'
MESSAGEBOX('Forma')
ENDIF
IF mas[1].baseclass = 'Commandbutton'
MESSAGEBOX('Knopka')
ENDIF

На форме имеется кнопка. Я навесил на Form.MouseMove вышеприведенную процедуру. Выводится только сообщение 'Forma', а вот 'Knopka' ни в какую, хотя курсор мыши находится над ней...
...
Рейтинг: 0 / 0
вопрос по фокусу
    #33827582
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Denver!

> На форме имеется кнопка. Я навесил на Form.MouseMove вышеприведенную
> процедуру.

Всё правильно - при движении над кнопкой Form.MouseMove не срабатывает :)
Повесь на таймер или на on key label. Только лучше извещай не через
Messagebox а через что-то неблокирующее - wait window ... nowait например)

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / вопрос по фокусу
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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