我的页面上有一个带按钮的表格。有很多按钮,我有一个滚动条向下滚动我的桌子。
按钮“onClick”会生成一个对话框,其中包含滚动面板,内容和关闭此对话框的按钮。我使用DialogBox.center()将其居中。当我按下时,让我们说一个表格中的第一个按钮,对话框严格出现在中心....但是当我向下滚动页面并按下表格底部的按钮时,我的DialogBox仍然出现在“旧”中中心......几乎在我的视线之上。根据我的滚动条位置,它根本不会向下移动。 我试图改变setPopupPosition(),setPopupPositionAndShow()等等,但它没有帮助。
有什么想法有什么不对吗?这是我的对话框的一些代码:
public class MyDialogBox extends DialogBox {
public MyDialogBox(final String caption, final String text) {
setText("Caption: " + caption);
VerticalPanel inner = new VerticalPanel();
Label msg = new Label(text);
Button ok = new Button("Close");
ok.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
MessageTextBox.this.hide();
}
});
inner.add(msg);
ScrollPanel scrollbar = new ScrollPanel(inner);
scrollbar.setSize("640", "480");
VerticalPanel outer = new VerticalPanel();
outer.add(scrollbar);
outer.add(ok);
setWidget(outer);
}
}
以下是我的按钮调用它的方式:
VerticalPanel mainPanel ... //MainPanel with a lot different elements, it contains panel with buttons
VerticalPanel panel ... //Panel with buttons
panel.setViewButtonHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
MyDialogBox dialogBox = new MyDialogBox("Caption", "Some text");
dialogBox.center();
dialogBox.show();
}
});
mainPanel.add(panel);
答案 0 :(得分:0)
上述问题的根源似乎非常简单。 Chrome无法正确居中对话框。我用FF,IE检查......它按计划运行。