我有一个浏览器,我正在以类似于以下方式向其中添加内容:
browser.setText(browser.getText() + newText());
然后,当 html 太多而无法容纳在视图中时,我希望浏览器向下滚动,因此在每次调用后setText()
我也会这样做(正如网络上其他地方对这个问题的回答所建议的那样):
browser.execute("window.scrollTo(0, document.body.scrollHeight)");
但是,这不起作用!我也尝试过使用锚点滚动到,但这也不起作用。
如何实现?相反,我的方法中的问题在哪里(这似乎对其他人有用)?
谢谢
编辑:这是我的实际代码:
protected void createContents() {
shell = new Shell();
shell.setSize(450, 300);
shell.setText("SWT Application");
final Browser browser = new Browser(shell, SWT.NONE);
browser.setBounds(10, 10, 430, 220);
Button btnNewButton = new Button(shell, SWT.NONE);
btnNewButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseUp(MouseEvent e) {
browser.setText(browser.getText() + "<p>weeee!!!</p>");
browser.execute("window.scrollTo(0, document.body.scrollHeight)");
}
});
btnNewButton.setBounds(10, 236, 430, 32);
btnNewButton.setText("New Button");
}