PopupView
Основы
В свернутом состоянии значение атрибута minimizedValue отображается на экране в виде интерактивной ссылки, открывающей всплывающее окно.
Например:
<popupView caption="PopupView example, just "
minimizedValue="click me!">
<vbox width="100px" height="50px" >
<label value="Thank you!" align="MIDDLE_CENTER"/>
</vbox>
</popupView>
По умолчанию hideOnMouseOut="true", поэтому всплывающее окно закрывается, как только указатель мыши перемещается за его пределы. Чтобы окно закрывалось кликом по внешней области, установите значение данного атрибута в false:
<popupView minimizedValue="click me!"
hideOnMouseOut="false">
<vbox width="100px" height="50px" >
<textField caption="Text Field"/>
<button caption="Button"/>
</vbox>
</popupView>
Положение всплывающего окна
Существуют следующие методы для установки положения всплывающего окна:
-
setPopupPosition(PopupPosition position)- устанавливает положение всплывающего окна, используя следующие стандартные значения:-
DEFAULT- располагает popup в середине минимизированного значения. -
TOP_LEFT -
TOP_CENTER -
TOP_RIGHT -
MIDDLE_LEFT -
MIDDLE_CENTER -
MIDDLE_RIGHT -
BOTTOM_LEFT -
BOTTOM_CENTER -
BOTTOM_RIGHT
@Autowired private PopupView popupView; @Subscribe public void onInit(InitEvent event) { popupView.setPopupPosition(PopupView.PopupPosition.TOP_CENTER); } -
-
setPopupPosition(int top, int left)- устанавливает значенияtopиleft. -
setPopupPositionTop(int top)- устанавливает значениеtop. -
setPopupPositionLeft(int left)- устанавливает значениеleft.
Слушатели и события
|
Чтобы сгенерировать заглушку слушателя в Jmix Studio, выберите компонент в XML-дескрипторе экрана или на панели иерархии Jmix UI и используйте вкладку Handlers на панели инспектора Jmix UI. В качестве альтернативы вы можете воспользоваться кнопкой Generate Handler на верхней панели контроллера экрана. |
PopupVisibilityEvent
PopupVisibilityEvent отправляется, когда пользователь открывает или закрывает всплывающее окно.
@Autowired
private Notifications notifications;
@Subscribe("popupView")
public void onPopupViewPopupVisibility(PopupView.PopupVisibilityEvent event) {
notifications.create()
.withCaption(event.isPopupVisible() ?
"The popup is visible" : "The popup is hidden")
.withType(Notifications.NotificationType.HUMANIZED)
.show();
}
Чтобы создать слушателя события программно, используйте метод компонента addPopupVisibilityListener().
Все XML-атрибуты
|
Просматривать и редактировать атрибуты, применимые к компоненту, можно с помощью панели инспектора Jmix UI в конструкторе экранов Studio. |
align - box.expandRatio - caption - captionAsHtml - colspan - contextHelpText - contextHelpTextHtmlEnabled - css - description - descriptionAsHtml - enable - height - hideOnMouseOut - htmlSanitizerEnabled - icon - id - minimizedValue - responsive - rowspan - stylename - tabIndex - visible - width