正在爲我的班級工作。我試圖添加一個可點擊的超鏈接到一個彈出對話框(在Java swing gui中),用戶可以點擊它們將它們帶到一個網頁。目前,我發現彈出了可自行工作的超鏈接,但沒有任何可用於附加到我的對話框的超鏈接。有沒有辦法做這樣的事情?我正在使用二叉搜索樹來執行數據,是否可以將它添加到節點,toString和addNode方法中,並使用可點擊的超鏈接將它放在對話框中?我正在使用的代碼如下:Java GUI對話框超鏈接
private void HydrogenActionPerformed(java.awt.event.ActionEvent evt) {
JOptionPane.showMessageDialog(null, (new1.theTree.findNode(1)
+
JPanel p = new JPanel();
JLabel link = new JLabel("http://en.wikipedia.org/wiki/"+"Hydrogen");
link.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
link.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if (e.getClickCount() > 0)
{
if (Desktop.isDesktopSupported())
{
Desktop desktop = Desktop.getDesktop();
try
{
String element = "Hydrogen";
URI uri = new URI("http://en.wikipedia.org/wiki/"+element);
desktop.browse(uri);
}
catch (IOException ex)
{
ex.printStackTrace();
}
catch (URISyntaxException ex)
{
ex.printStackTrace();
}
}
}
}
});
p.add(link); getContentPane()。add(BorderLayout.NORTH,p);));
它不能正常工作,我不知道該如何工作。我願意接受任何想法。 謝謝。
JOptionPane.showMesageDialog(Component,Object)的Object參數可以帶一個將顯示在對話框上的組件。添加你想要顯示給組件的所有內容,並將此引用傳遞給JOptionPane – MadProgrammer