2012-09-09 58 views
2

可能重複:
hyperlink in java的Java:在文本區域單擊文本,並有它調用一個函數

第一篇文章在這裏堆棧溢出。 8)

我的問題是關於桌面客戶端JAVA程序,而不是JavaScript或任何基於Web的實現。

我追求的想法是讓TextArea(或者像其中一樣)具有用戶可以點擊的「超鏈接」。引擎蓋下的這些超鏈接會調用預定義的Java函數。

我知道我可以創建可點擊的JLabel和類似的東西,但是我在一段文字之後運行一個函數,只有一個可點擊的單詞。

有沒有辦法讓TextArea中的文本產生這種行爲?

在此先感謝!

回答

1

JTextPane將是你想要的組件。 你會從這個oracle tutorial得到一個清晰的想法。

1

您可以使用JEditorPane和一個HTML文檔作爲您的文本來源,並將HyperlinkListener添加到編輯器中。在這種情況下,您還必須爲鏈接創建「虛構」URL。

另一種選擇是使用JTextPane,編寫一些代碼以提供「超鏈接」突出顯示,並添加鼠標偵聽器來檢查用戶在鏈接上的點擊。