1

ac.getPage()クリックしたときにブラウザで開くハイパーリンクとして設定する方法はありますか? 実際の事実である人のブログの URL をac.getPage()返します。string以下を添付しようとしましたが、許可されていないjava.awt.Desktop.getDesktop().browse(java.net.URI.create(ac.getPage())というエラーが表示されますか? voidどうすればこれを修正できますか?

pageLabel.setText("Page:    " + ac.getPage());
4

1 に答える 1

3

JLabel の代わりに JTextPane を使用できます。

JTextPane pageLabel = new JTextPane();
pageLabel.setEditable(false);
pageLabel.setText("<html>Page: <a href='http://eo.wikipedia.org/'>vikipedio</a>"):
pageLabel.addHyperLinkListener(new HyperLinkListener() {
    @Override
    public hyperlinkUpdate(HyperlinkEvent event) {
        if (event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
            String url = event.getURL().toString();
            Desktop.getDesktop().browse(URI.create(url));
        }
    }
});
于 2012-12-31T12:28:11.097 に答える