GXT button 与MessageBox实现确认视窗功能

gxt button目前无法实现弹出确认视窗,将动态响应效果延迟到确认以后执行。

 

实现此功能关键代码:

1、

 

@Override

public void addListener(EventType eventType,

Listener listener) {

listenerList.add(listener);

}

 

2、

 

if (isShowConfirm() == true) {

super.addListener(Events.Select, new SelectionListener() {

@Override

public void componentSelected(final ComponentEvent ce) {

MessageBox.confirm(getBtnText(), Msg.get.areuSure()

+ getBtnText() + "?",

new Listener() {

public void handleEvent(MessageBoxEvent be) {

Button btn = be.getButtonClicked();

if (btn.getText().equals(

GXT.MESSAGES.messageBox_yes())) {

doSelectionEvent(ce);

}

}

});

}

}

});

} else {

super.addListener(Events.Select, new SelectionListener() {

@Override

public void componentSelected(final ComponentEvent ce) {

doSelectionEvent(ce);

}

}

});

 

 

3、

 

public void doSelectionEvent(final ComponentEvent ce) {

Iterator it = listenerList.iterator();

while (it.hasNext()) {

it.next().handleEvent(ce);

}

}

 

你可能感兴趣的:(GWT,java,GXT)