Combobox 在 MessageBox 关闭时关闭 ZK
Combobox gets closed on MessageBox closure ZK
我正在使用 ZK CE-9.0.0。
我有一个 combobox
,我需要通过单击 Messagebox
的 OK
按钮以编程方式打开它。因此,我为 OK
按钮的点击事件实现了 Listener
。在点击事件中,我使用以下代码打开 combobox
:
EventListener<Messagebox.ClickEvent> clickListener = new EventListener<Messagebox.ClickEvent>() {
@Override
public void onEvent(ClickEvent event) throws Exception {
mycombo.open();
}
};
Messagebox.Button[] buttons = new Messagebox.Button[] {Messagebox.Button.OK};
Messagebox.show("Hi btn", buttons, clickListener);
现在我面临的问题是,combobox
打开半秒。然后它会立即自动关闭。
据我了解,是因为Messagebox
。单击事件的执行完成后,Messagebox
关闭并导致 combobox
也关闭。
请查看 this fiddler 以获得更好的理解。 请select之前运行ZK版本为9.0.0
谁能帮我解决这个问题?
谢谢,
RAS
您是对的,主要问题来自按钮在组合框动画之后检索焦点。
关闭的消息框将焦点返回给按钮
由于组合框失去焦点,组合弹出窗口也关闭了。
处理此问题的一种简洁方法是使用 echo event 等待消息框实际关闭,然后再将打开操作发送到组合框。
看这个 fiddle:
https://zkfiddle.org/sample/1rkm5d/6-Combobox-gets-closed-on-MessageBox-close#source-2
我正在使用 ZK CE-9.0.0。
我有一个 combobox
,我需要通过单击 Messagebox
的 OK
按钮以编程方式打开它。因此,我为 OK
按钮的点击事件实现了 Listener
。在点击事件中,我使用以下代码打开 combobox
:
EventListener<Messagebox.ClickEvent> clickListener = new EventListener<Messagebox.ClickEvent>() {
@Override
public void onEvent(ClickEvent event) throws Exception {
mycombo.open();
}
};
Messagebox.Button[] buttons = new Messagebox.Button[] {Messagebox.Button.OK};
Messagebox.show("Hi btn", buttons, clickListener);
现在我面临的问题是,combobox
打开半秒。然后它会立即自动关闭。
据我了解,是因为Messagebox
。单击事件的执行完成后,Messagebox
关闭并导致 combobox
也关闭。
请查看 this fiddler 以获得更好的理解。 请select之前运行ZK版本为9.0.0
谁能帮我解决这个问题?
谢谢,
RAS
您是对的,主要问题来自按钮在组合框动画之后检索焦点。 关闭的消息框将焦点返回给按钮 由于组合框失去焦点,组合弹出窗口也关闭了。
处理此问题的一种简洁方法是使用 echo event 等待消息框实际关闭,然后再将打开操作发送到组合框。 看这个 fiddle: https://zkfiddle.org/sample/1rkm5d/6-Combobox-gets-closed-on-MessageBox-close#source-2