Java 如何为gwt中的文本框调用click()函数
当我点击一个按钮时,我想让它点击旁边的一个文本框。然而,仅仅关注文本框是行不通的。我实际上需要单击它,用户可以手动执行,但如何以编程方式执行Java 如何为gwt中的文本框调用click()函数,java,gwt,button,textbox,onclick,Java,Gwt,Button,Textbox,Onclick,当我点击一个按钮时,我想让它点击旁边的一个文本框。然而,仅仅关注文本框是行不通的。我实际上需要单击它,用户可以手动执行,但如何以编程方式执行 Button.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { //Click the texbox } }); 有趣的是,这几乎是我在你的文章中提出的解决方案 用它解决问题应该很容
Button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
//Click the texbox
}
});
有趣的是,这几乎是我在你的文章中提出的解决方案 用它解决问题应该很容易,比如:
//add TextBox and Button to the DOM
GQuery.$(button).click(new Function() { public void f() {
GQuery.$(textBox).click();
}});
//if you want to test if the click event has been fired
GQuery.$(textBox).click(new Function() { public void f() {
Window.alert("Text Box clicked");
}});
我没有亲自测试代码,因此如果您有任何错误或疑问,请告诉我:)您可以调用元素上的本机事件:
NativeEvent event = Document.get().createClickEvent();
DomEvent.fireNativeEvent(event, myTextBox);
为什么你希望同时有两个点击事件?@AndreiVolgin用户会点击一个按钮,这会让用户在文本框中输入焦点。但是,如果我只是做一个textBox.setFocus(true),如果我使用phonegap将其制作成移动应用程序,软键盘不会显示。所以我决定,为什么我不强制手动点击文本框,因为它会显示软键板谢谢你让我了解GQuery,但是我使用Java,不想使用GQuery。你知道如何使用java在文本框上触发点击事件吗?是的!遵循@Andrei刚刚写的路径。请确保将要接收事件的元素之前已将其击沉:)对不起,您所说的元素之前已将其击沉是什么意思波!尝试总结一下,sinking eventas是Gwt通过onBrowserEvent方法知道哪些浏览器事件应该“接收/侦听”每个小部件的方式。GQuery是Java,它是为Gwt编写的JQuery的Java端口。嗨,这似乎不适用于扩展文本框的suggestionBox,你知道为什么吗?你所说的“似乎不起作用”是什么意思?即使我这样做了,我也认为这将使文本框(因为它是一个点击)成为焦点,并打开虚拟/软键盘,但是这些事情似乎都没有发生。我对suggestbox/虚拟键盘有着完全相同的需求/问题。既然你接受了答案,我想知道解决办法?