У меня есть список URL-адресов в сетке, и мне нужно, чтобы при щелчке пользователем по URL-адресу открывались новые окна браузера с таким же URL-адресом
Я читаю некоторые темы, но в моем случае я считаю, что моя ситуация немного отличается. В моем контроллере
Я использую следующий код
UrlListCollection.generateListUrl();
dataGrid.setRowRenderer(new RowRenderer() {
public void render(Row row, Object data) throws Exception {
UrlObj url = (UrlObj) data;
row.getChildren().add(new Label("Some data"));
row.getChildren().add(new Toolbarbutton(url.getUrlApp())); // url.getUrlApp() will be return a link like http://www.google.com
}
});
На мой взгляд (зул) у меня есть
<grid id="dataGrid" width="100%">
<columns>
<column label="Some Data" sort="auto(FIELD_NAME)" width="200px" />
<column label="URL LINK" sort="auto(URL)" width="630px" />
</columns>
</grid>
Но общий способ установить событие для компонента в Java может быть:
Toolbarbutton button = new Toolbarbutton(url.getUrlApp()));
button.addEventListener(Events.ON_CLICK, new EventListener() {
public void onEvent(evt) {
// what I put here to open a Link in another web browser window ????
// and I need to be able to open every object value retrieved by url.getUrlApp() ???
}
});
Теперь я не знаю, что нужно для того, чтобы мой код работал. Для меня способ применения кнопки «Событие к панели инструментов» внутри сетки, использующей метод RowRenderer, странный. Я не могу найти решение самостоятельно.