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
- 弹窗位于最小化值链接的中间。 -
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 层级结构面板选中该组件,然后用 Jmix UI 组件面板的 Handlers 标签页生成。 或者可以使用界面控制器顶部面板的 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 属性
可以使用 Studio 界面设计器的 Jmix UI 组件面板查看和编辑组件的属性。 |
align - box.expandRatio - caption - captionAsHtml - colspan - contextHelpText - contextHelpTextHtmlEnabled - css - description - descriptionAsHtml - enable - height - hideOnMouseOut - htmlSanitizerEnabled - icon - id - minimizedValue - responsive - rowspan - stylename - tabIndex - visible - width