Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.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 Vaadin使用侦听器在web浏览器中打开新选项卡_Java_Tabs_Window_Listener_Vaadin - Fatal编程技术网

Java Vaadin使用侦听器在web浏览器中打开新选项卡

Java Vaadin使用侦听器在web浏览器中打开新选项卡,java,tabs,window,listener,vaadin,Java,Tabs,Window,Listener,Vaadin,我只是在做一个简单的书签应用程序,当我双击表格中的书签时,我想在“新建”选项卡中的URL打开一个网页。我让侦听器等待双击,但我不知道如何打开带有URL的新选项卡: table_1.addListener(new ItemClickEvent.ItemClickListener() { public void itemClick(ItemClickEvent event) { if (event.isDoubleClick()) {

我只是在做一个简单的书签应用程序,当我双击表格中的书签时,我想在“新建”选项卡中的URL打开一个网页。我让侦听器等待双击,但我不知道如何打开带有URL的新选项卡:

table_1.addListener(new ItemClickEvent.ItemClickListener() {
            public void itemClick(ItemClickEvent event) {
                if (event.isDoubleClick()) {
                    System.out.println("double click");
                    BrowserWindowOpener open = new BrowserWindowOpener(new ExternalResource("http://www.google.com"));

                }
            }
        });

我尝试使用BrowserWindowOpener,但是当我扩展一个组合时,例如这个表,它的工作原理就像我必须双击我的表项,然后我必须再次单击表上的任何位置以打开新选项卡。如何将其更改为简单的双击->打开新窗口?

恐怕您必须使用Javascript

    VerticalLayout layout = new VerticalLayout();
    layout.setWidth("200px");
    layout.setHeight("200px");
    layout.addLayoutClickListener(new LayoutClickListener()
    {
        @Override
        public void layoutClick(LayoutClickEvent event)
        {
            if(event.isDoubleClick()){
                JavaScript.eval("var win = window.open('http://www.penny4nasa.org', '_blank');win.focus();");
            }
        }
    });
    setContent(layout);

第二种方法是使用GWT编写自己的自定义组件。

您是如何解决这个问题的?面临类似问题。请尝试此操作而不是BrowserWindowOpener:
getUI().getPage().open(“http://www.google.com“,”空白“)@erwin,在新窗口中打开页面