GWT Label как Hyperink - PullRequest
       9

GWT Label как Hyperink

3 голосов
/ 26 августа 2010

Я хочу GWT Label, который действует как гиперссылка.

По сути, метка должна иметь метод «по нажатию», который при нажатии открывает веб-сайт. Я не хочу реализовывать это с помощью IFrame.

Есть ли способ сделать это?

Извините, если вопрос очень легко решить.

1 Ответ

4 голосов
/ 26 августа 2010

Я бы предложил использовать Anchor, более конкретно, через конструктор Anchor(java.lang.String text):

Создает якорь для скриптинга. href для anchor установлен в javascript:;, основываясь на ожидании того, что слушатели будут добавлены на якорь.

Таким образом, вы получите хороший код <a>, который по щелчку ничего не делает, но вы можете добавить к нему ClickHandler, например:

Anchor anchor = new Anchor("Click me!"); // At this point clicking it won't do a thing
anchor.addClickHandler(new ClickHandler() {
    @Override
    public void onClick (ClickEvent event){
        Window.open("http://www.example.com/", "_blank", ""); // Or open a PopupPanel
                                                              // or sth similar
    }
});

Я советую Anchor более Label по причинам доступности - если это ссылка, то это должно быть <a>, ИМХО. Если вам действительно нужно использовать Label, вы можете добавить к нему ClickHandler, как показано выше.

...