OberonCore
https://forum.oberoncore.ru/

Аналог MouseOut
https://forum.oberoncore.ru/viewtopic.php?f=1&t=5621
Страница 1 из 1

Автор:  Иван Денисов [ Вторник, 16 Февраль, 2016 17:06 ]
Заголовок сообщения:  Аналог MouseOut

Как отследить уход мыши с отображения? Желательно через HandleCtrlMsg самого отображения.

Автор:  Иван Кузьмицкий [ Среда, 17 Февраль, 2016 10:15 ]
Заголовок сообщения:  Re: Аналог MouseOut

Два способа, делал оба.

1) Само отображение регулярно проверяет курсор. Достаточно отдельного Services.Action.
2) Контейнер отображения проверяет курсор и при уходе его с нашего отображения, посылает отображению сообщение. Нужен специальный контейнер.

Автор:  Александр Ильин [ Среда, 17 Февраль, 2016 13:26 ]
Заголовок сообщения:  Re: Аналог MouseOut

А если курсор ушёл с контейнера?

Автор:  Иван Денисов [ Среда, 17 Февраль, 2016 15:28 ]
Заголовок сообщения:  Re: Аналог MouseOut

Иван Кузьмицкий писал(а):
Два способа, делал оба.

1) Само отображение регулярно проверяет курсор. Достаточно отдельного Services.Action.
2) Контейнер отображения проверяет курсор и при уходе его с нашего отображения, посылает отображению сообщение. Нужен специальный контейнер.

Вот для ссылок пришлось сделать по первому варианту.

А вот пока разбирался нашел загадочные
Код:
TYPE Forwarder
ABSTRACT
Для внутреннего пользования.

PROCEDURE (n: Forwarder) Forward (target: BOOLEAN; VAR msg: Message)
NEW, ABSTRACT
Для внутреннего пользования.

PROCEDURE (n: Forwarder) Transfer (VAR msg: TransferMsg)
NEW, ABSTRACT
Для внутреннего пользования.


а также процедуру

Код:
PROCEDURE Transfer (x, y: INTEGER; source: Views.Frame; sourceX, sourceY: INTEGER; VAR msg: TransferMessage)


Никто не разбирался, что они делают?

Автор:  Александр Ильин [ Среда, 17 Февраль, 2016 18:27 ]
Заголовок сообщения:  Re: Аналог MouseOut

А если отображение больше не нужно, кто удалит Services.Action?

Автор:  Иван Кузьмицкий [ Четверг, 18 Февраль, 2016 09:05 ]
Заголовок сообщения:  Re: Аналог MouseOut

Иван Денисов писал(а):
Код:
PROCEDURE Transfer (x, y: INTEGER; source: Views.Frame; sourceX, sourceY: INTEGER; VAR msg: TransferMessage)


Никто не разбирался, что они делают?


Вот эта вот Transfer, она для драг-н-дропа используется. Про Forward... Покопался в записях, ничего не нашёл, промолчу.

Александр Ильин писал(а):
А если отображение больше не нужно, кто удалит Services.Action?
Вопрос не в бровь, а в глаз! Где-нить в деструкторе удалить, например. Мне, конечно, больше нравится идея продвинутого контейнера.

Александр Ильин писал(а):
А если курсор ушёл с контейнера?
Главное окошко отследит. Для не-MDI должно работать нормально.

Автор:  Info21 [ Суббота, 20 Февраль, 2016 15:23 ]
Заголовок сообщения:  Re: Аналог MouseOut

Иван Денисов писал(а):
Как отследить уход мыши с отображения? Желательно через HandleCtrlMsg самого отображения.
Вьюшка все-таки понятнее.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/