JEditorPaneにおけるハイパーリンク設定を以下に記します。ハイパーリンクをクリックすると、ブラウザにリンク先の内容が表示されます。
仕組みができてしまえば、あとはhrefを仕込んだhtmlファイルを作るようにしていくわけですが、新たにリンク先htmlファイルも作らないといけないですし、作業量はそれなりです。
検索時にリンク先htmlを出走全レース作るフローにするとその分処理時間が長くなるため、ハイパーリンクをクリックするタイミングでSQL検索しリンク先htmlを作成するようにしたいところです。
一連の処理は[Java] 68の記事に書いた外部プログラムを拡充してPythonにさせるつもりです。
// PAGE_CENTER設定
editorPane = new JEditorPane();
contentPane.add(editorPane, BorderLayout.CENTER);
editorPane.setContentType("text/html");
editorPane.setEditable(false);
editorPane.setBackground(new Color(0xf0f8ff));
editorPane.addHyperlinkListener(new HyperlinkListener() {
@Override
public void hyperlinkUpdate(HyperlinkEvent e) {
if (HyperlinkEvent.EventType.ACTIVATED.equals(e.getEventType())) {
Desktop desktop = Desktop.getDesktop();
try {
desktop.browse(e.getURL().toURI());
} catch (IOException e1) {
e1.printStackTrace();
} catch (URISyntaxException e1) {
e1.printStackTrace();
}
}
}
});