gpt4 book ai didi

javascript - 通过Swt Eclipse浏览器监听字段的变化

转载 作者:行者123 更新时间:2023-12-01 03:58:43 25 4
gpt4 key购买 nike

在 Java 项目中,我使用 SWT Eclipse 作为浏览器。

我运行这个浏览器并加载页面正常。

加载的页面如下所示:

<!DOCTYPE html>
<html>
<body>

Start: <input type="text" id="startTimeField" onchange="myFunction()" placeholder="Type text and press Enter"> ms

<script>
function myFunction() {
document.getElementById('startTimeField').value = new Date().getMilliseconds();
}
</script>

</body>
</html>

我想用 Java 代码监听页面中的元素。

示例我想要实现的目标:在 Java 中按 JButton,它应该从页面中找到 id startTimeField 的按钮并向其添加监听器。监听器应该监听该字段的值的变化。这个怎么做 ?

最佳答案

这是一个非常简单的示例,包含两个 HTML 按钮。单击时,它们将调用 SWT BrowserFunction 并传入按钮的 id:

public static void main(String[] args)
{

Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());

Browser browser = new Browser(shell, SWT.NONE);
browser.setText("<button id='button1' onclick='buttonClicked(this.id)'>Click me</button><button id='button2' onclick='buttonClicked(this.id)'>Click me</button>");

new BrowserFunction(browser, "buttonClicked")
{
@Override
public Object function(Object[] objects)
{
System.out.println("BUTTON CLICK; ID: " + objects[0]);
return null;
}
};

shell.pack();
shell.open();

while (!shell.isDisposed())
{
if (!display.readAndDispatch())
{
display.sleep();
}
}
display.dispose();
}

关于javascript - 通过Swt Eclipse浏览器监听字段的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42394510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com