Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何为gwt中的文本框调用click()函数_Java_Gwt_Button_Textbox_Onclick - Fatal编程技术网

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/虚拟键盘有着完全相同的需求/问题。既然你接受了答案,我想知道解决办法?