2016-03-22 7 views
0

テーブルビューを更新し、テーブルの列にハイパーリンクする簡単なテキストURLを設定する方法はありますか?JavaFX JAXBでXMLからデータをロードした後で、TableViewのハイパーリンクにテキストを変換する

ありがとうございます。

+1

あなたは、このために、セルファクトリを使用します。 xml/jaxbのものは無関係です。データの表示方法はどこから来るのかは関係ありません。列のデータであるURLを含むハードコードされたデータを含むテーブルビューを作成し、セルファクトリで動作させることができるかどうかを確認してください。あなたが立ち往生したらあなたの実際のコードを投稿してください。 –

答えて

0

ヒントのおかげで私は試して、それは働いた!その後、JAXBにXMLアダプタを追加しようとしましたが、それも機能しました。

public class XMLHyperLinkAdapter extends XmlAdapter<String, Hyperlink> { 

@Override 
public Hyperlink unmarshal(String v) { 
    try{ 
     Hyperlink link = new Hyperlink(); 
     link.setText(v); 
     link.setOnAction((ActionEvent e) -> { 
      link.setVisited(false); 
      System.out.println("This link is clicked: " + link.getText()); 
     }); 
     return link; 

    }catch (Exception e) 
    { 
     e.printStackTrace(); 
     return null; 
    } 

} 

@Override 
public String marshal(Hyperlink v) throws Exception { 
    return v.getText(); 
} 

}

関連する問題