2012-01-17 46 views
0

我是编程新手。如何在Gwt的PopupPanel中添加取消按钮

我有垂直面板。一个按钮(lblAddFolderIcon)被添加到verticalPanel和一些小部件。

点击b1应该有一个弹出面板与一些更多的小部件和两个按钮添加和取消。

我的代码:

lblAddFolderIcon.addClickHandler(new ClickHandler() { 
     public void onClick(ClickEvent event) { 
      String childFolder = item.getText(); 
      String[] mainRepository=getPath(item); 
      String objectId=item.getTitle(); 

      final AddFolderPopup addFolderPopup = new AddFolderPopup(childFolder,mainRepository[0],objectId); 
      addFolderPopup.setHeight("300px"); 
      addFolderPopup.setWidth("502px"); 
      addFolderPopup.setPopupPositionAndShow(new PopupPanel.PositionCallback() { 

       public void setPosition(int offsetWidth, int offsetHeight) { 
        // TODO Auto-generated method stub 
        int left = (Window.getClientWidth() - offsetWidth)/3; 
        int top = (Window.getClientHeight() - offsetHeight)/3; 
        addFolderPopup.setPopupPosition(left, top); 
       } 
      }); 
      //addFolderPopup.show(); 
      addFolderPopup.addFolderGui(); 
     } 
    }); 

public class AddFolderPopup extends PopupPanel { 
VerticalPanel vpPopupl = new VerticalPanel(); 
private String childFolder; 
private String mainRepository; 
private String objectId; 

public AddFolderPopup(){ 
    super(true); 
} 
public AddFolderPopup(String childFolder, String mainRepository, String objectId) { 
    this.childFolder = childFolder; 
    this.mainRepository = mainRepository; 
    this.objectId = objectId; 

} 
public void addFolderGui() { 
     // some widget to design Gui and 
     Button btnCancel = new Button("Cancel"); 
    btnCancel.addClickHandler(new ClickHandler() { 
     public void onClick(ClickEvent event) { 
           /* i Dont Know what should i write here 
            so that this popupwindow is closed 
           */ 
       } 
    }); 
     } 
    } 

PLZ建议一些代码来关闭这个弹出窗口和 我的方法也是否正确。

+1

弹出式面板上的取消按钮?你确定你不想要一个对话框? – milan 2012-01-17 13:25:53

+0

它应该是后面屏幕上显示的窗口。如果对话框满足需要,则会显示为 。 – NewCodeLearner 2012-01-17 13:35:10

回答

3

内的点击处理程序的匿名类: AddFolderPopup.this.hide();

3

尝试拨打您的 hide() 取消的onclick