【问题标题】:Vaadin: open new window with ABSOLUTE url path from a BUTTONVaadin:使用按钮的绝对 URL 路径打开新窗口
【发布时间】:2014-04-24 21:39:34
【问题描述】:

我有一张地址表。我有一个按钮,你可以点击它,我想在单独的窗口中打开谷歌搜索地址。我已经用BrowserWindowOpener 尝试过这段代码。

getUI().getPage().open(url, "_blank")

BrowserWindowOpener opener = new BrowserWindowOpener(url);
opener.extend(googleBtn)

但两者都将我的网址附加到当前路径。我想在单独的窗口中简单地在谷歌中运行搜索。我敢肯定这比我做的要简单得多。至少应该如此。谢谢。

【问题讨论】:

  • 顺便说一下,请参阅《瓦丁之书》herehere 中的 BrowserWindowOpener 示例。

标签: vaadin vaadin7


【解决方案1】:

Brimby,您第二次尝试是对的。 BrowserWindowOpener 扩展是要走的路。您应该使用带有绝对 URL 的 ExternalResource 实例,如下所示:

public class OpenGoogleUI extends UI {
    @Override
    protected void init(VaadinRequest request) {
        BrowserWindowOpener extension = new BrowserWindowOpener(new ExternalResource("https://www.google.by/#q=vaadin"));
        Button button = new Button("Open Google");
        extension.extend(button);
        setContent(button);
    }
}

【讨论】:

  • 谢谢。这确实适用于 Safari 浏览器中的 Vaadin 7.6.4。
  • 这段代码 sn-p 应该是 Vaadin 之书的一部分
【解决方案2】:

试试这个:

// Hyperlink to a given URL
Link link = new Link("Google It",
        new ExternalResource("https://www.google.by/#q=search+query"));

// Open the URL in a new window/tab
link.setTargetName("_blank");

【讨论】:

  • 对不起,我没有说得很清楚,但我需要一个按钮,而不仅仅是一个链接。你知道吗?
  • 我想要的部分,link.setTargetName("_blank");,为我工作。谢谢!
猜你喜欢
  • 1970-01-01
  • 2020-12-13
  • 1970-01-01
  • 2012-06-17
  • 2011-06-06
  • 2017-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多