Combobox在MessageBox关闭时被关闭 ZK

问题描述 投票:0回答:1

我用的是ZK CE-9.0.0。

我有一个 combobox 我需要以程序方式打开它,在点击 OK 的按钮 Messagebox. 因此,我已经实施了一个 Listener 的点击事件。OK 按钮。在点击事件里面,我打开了 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 也要关闭。

请看一下 这个 fiddler,以便更好地理解。请选择ZK版本为9.0.0再运行。

谁能帮我解决这个问题?

谢谢了。

RAS

combobox messagebox zk
1个回答
2
投票

你是对的,主要的问题来自于按钮在组合框的动画后收回焦点,焦点是由关闭的Messagebox反馈给按钮的。

处理这个问题的一个简单的方法是使用一个 回声 以等待消息框真正关闭后再发送打开动作到组合框中。https:/zkfiddle.orgsample1rkm5d6-Combobox-gets-closed-onMessageBox-close#source-2。

© www.soinside.com 2019 - 2024. All rights reserved.