【发布时间】:2013-05-08 09:23:02
【问题描述】:
对于菜单实现,我在FocusPanel 上添加了一个点击处理程序,其中包含一个标签。单击FocusPanel 会打开一个VerticalPanel,以及其他几个标签,每个标签都带有ClickHandlers。单击其中一个标签会更改FocusPanel 中的标签。这部分工作正常。但由于某种原因,我无法在单击标签后隐藏VerticalPanel。
关于可能出现什么问题的任何想法?
我添加了一些 sysout,它告诉我面板实际上是隐藏的,顶部位置 = 0。但是,它不会在屏幕上消失(在 FF 和 Chrome 中测试)。
final VerticalPanel popupPanel = new VerticalPanel();
popupPanel.setVisible(false);
popupPanel.setStyleName("popupGreen");
for (int i = 0; i < options.length; i++) {
final Label option = new Label();
final String text = options[i];
option.setText(text);
if (text.equals(chosen)) {
option.addStyleName("selected");
}
option.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
textBox.setText(text);
popupPanel.setVisible(false);
popupPanel.getElement().getStyle().setProperty("display", "none");
System.out.println(popupPanel.isVisible());
System.out.println(popupPanel.getAbsoluteTop());
}
});
popupPanel.add(option);
}
verticalPanel.add(popupPanel);
【问题讨论】:
标签: gwt