2013-04-25 124 views
0

我看到處處都找不到答案。對不起,如果這已經發布之前。JTable中的可點擊的html鏈接

當單元格本身只包含一個URL時,我知道如何做一個可單擊的URL,它基本上只是將一個mouselistener附加到一個表上,並獲取哪個Row被點擊並獲取值。這很簡單。

我的問題是,我有一個單元格內的幾個鏈接,所以我需要在用戶點擊這些鏈接時發生不同的事情。例如:

class MyTableModel extends AbstractTableModel { 

@Override 
     public Object getValueAt(int rowIndex, int columnIndex) { 

      switch (columnIndex) { 
      case 0: 
        return "<html><a href='www.test.com'>test1</a> <a href='www.test2.com'>test2</a></html>"; 

      default: 
        throw new IndexOutOfBoundsException(); 
      }  
     } 
} 

所以我有兩個不同的鏈接,需要彼此相鄰。我如何知道他們中的哪一個被點擊?

找出被點擊的行並不困難,但是如何找出行內的哪個元素被點擊?

編輯:由於它弄亂了單元格內的對象,因此無法使用JEditorPane。

+0

重複[在JTable中圖片的HTML問題(http://stackoverflow.com/questions/16209322/html-issues-with -images合的JTable)。 – trashgod 2013-04-25 19:51:07

+0

它不重複。這是爲多個網址在單元格中被點擊,另一個是用於定位HTML元素(圖片)而沒有線路制動。 – Omid 2013-04-25 20:02:13

回答

0

爲此,您必須將單元格製作爲JEditorpane。正如你提到你使用的單元格(可能是它的Jtable)使jtable自定義和可編輯的單元格。

清潔香港出此鏈接:

JtextPane

Tutorial

+0

我無法使用JEditorPane,它在加載多個元素時完全混淆了單元格:( – Omid 2013-04-25 18:39:23

+0

@Omid:請編輯您的問題以包含這些要求。 – trashgod 2013-04-25 19:57:17