Перейти к содержанию

Popup

Всплывающий виджет, позиционируемый относительно целевых элементов интерфейса или экранных координат.

Обзор

Popup представляет собой легковесный плавающий контейнер, привязанный к определенному целевому виджету или координате экрана.

Ключевые возможности: - Относительное позиционирование по сторонам виджета-якоря (TOP, BOTTOM, LEFT, RIGHT). - Контроль выхода за границы родительского контейнера. - Автоматическое закрытие при клике вне границ всплывающего окна (closeOnOutsideClick). - Слушатели событий открытия и закрытия (onOpenChanged).

Открытие привязанного всплывающего окна

Popup popup = new Popup(button, menuContent);
popup.open();

Связанные ссылки

  • OverlayLayer: Полноэкранный слой оверлеев, управляющий модальными подложками, диалогами, всплывающими окнами и проверкой попаданий.
  • Tooltip: Всплывающая подсказка (тултип), отображающая вспомогательный текст, форматированный контент и таймеры задержки.

API

Создает пустой экземпляр Popup.

Popup(Widget, Widget)

Создает Popup, привязанный к виджету-якорю и отображающий заданный контент.

Параметр Тип Описание
anchor Widget Виджет-якорь, относительно которого выполняется позиционирование.
content Widget Вложенный виджет контента.

Popup::anchor()

Возвращает виджет-якорь, к которому привязан попап.

Возвращает Widget: Целевой виджет-якорь..

Popup::anchor(Widget)

Устанавливает виджет-якорь для привязки попапа.

Параметр Тип Описание
anchor Widget Виджет-якорь, относительно которого выполняется позиционирование.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::arrangeInHost(RectView)

Позиционирует попап внутри границ родительского контейнера.

Параметр Тип Описание
bounds RectView Прямоугольная область границ родительского контейнера.

Popup::close()

Закрывает попап.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::closeOnOutsideClick()

Возвращает true, если попап закрывается при клике снаружи.

Возвращает boolean: True, если закрытие по клику вне виджета включено..

Popup::closeOnOutsideClick(boolean)

Устанавливает, должен ли попап закрываться при клике снаружи.

Параметр Тип Описание
closeOnOutsideClick boolean Закрывать ли виджет автоматически при клике вне его области.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::content()

Возвращает вложенный виджет контента.

Возвращает Widget: Вложенный виджет контента..

Popup::content(Widget)

Устанавливает вложенный виджет контента.

Параметр Тип Описание
content Widget Вложенный виджет контента.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::offset(float, float)

Устанавливает дополнительное смещение от вычисленного положения в пикселях.

Параметр Тип Описание
x float Горизонтальная координата X.
y float Вертикальная координата Y.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::onOpenChanged(Runnable)

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

Параметр Тип Описание
onOpenChanged Runnable Колбэк, вызываемый при изменении состояния открытия всплывающего окна.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::open()

Открывает попап.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::open(boolean)

Устанавливает состояние открытия попапа.

Параметр Тип Описание
open boolean Флаг целевого состояния открытия.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::opened()

Возвращает true, если попап в данный момент открыт.

Возвращает boolean: True, если виджет в данный момент открыт..

Popup::padding(EdgeInsets)

Устанавливает внутренние отступы содержимого всплывающего окна.

Параметр Тип Описание
padding EdgeInsets Внутренние отступы контента.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::placement()

Возвращает относительное положение попапа.

Возвращает Placement: Текущее положение размещения..

Popup::placement(Placement)

Устанавливает относительное положение попапа.

Параметр Тип Описание
placement Placement Положение всплывающего окна относительно виджета-якоря.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..

Popup::toggle()

Переключает состояние открытия попапа.

Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..