组合框在MessageBox关闭ZK时关闭



我使用的是ZK CE-9.0.0。

我有一个combobox,需要通过单击MessageboxOK按钮以编程方式打开。因此,我实现了用于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被关闭&它使CCD_ 10也被关闭。

请看一下这个小提琴手,以便更好地理解请在运行ZK之前将其版本选择为9.0.0。

有人能帮我吗?

谢谢,

RAS

您认为主要问题来自组合框动画后的按钮检索焦点,这是正确的。焦点通过关闭的消息框返回到按钮由于组合框焦点松动,组合弹出窗口也关闭。

处理此问题的一种干净方法是使用echo事件等待消息框实际关闭,然后再将打开操作发送到组合框。看看这把小提琴:https://zkfiddle.org/sample/1rkm5d/6-Combobox-gets-closed-on-MessageBox-close#source-2

最新更新