2016-06-23 4 views
1

その属性に応じてノードを検索してどの単語この質問をしてまで、私は本当に..私は思いXPathは、私はよく分からない

をその上に糸を見つける...しかしなかった理由多分それはありますFXMLからTextFieldのすべてのfx:idsを取得しようとしています。

<GridPane alignment="center" hgap="10" vgap="10"> 
    <TextField fx:id="_azimuth" GridPane.columnIndex="1" /> 
    <TextField fx:id="_elevation" GridPane.columnIndex="1" GridPane.rowIndex="1" /> 

</GridPane> 

私は、このようなこれをテストしたことがない(よう

...周りに他の方法で周りを見回したとFXML要素のidのか、属性に基づいた検索を解析する方法についてのカップルを見てではなく、コードが、私が参照してる例)とその類似した:

String expression = "/GridPane/TextField[@fx:id='_elevation']"; 

私はちょうどこれの逆を探しています...:\

これは別の目に前に回答されている場合読んで、そこに私を案内してもらえますか?御時間ありがとうございます!

編集:TextFieldの代わりにラベルを挿入します。ごめんなさい!

答えて

0

私の指導者から回答が見つかりましたが、ここではFXMLをNodeListに読み込んだ後のコードスニペットがあります。

Node node = (Node) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODE); 
NodeList temp = node.getChildNodes(); 
for(int i = 0; i < temp.getLength(); i++){ 
    System.out.println(i + ": " + temp.item(i).getNodeName()); 
    if(temp.item(i).getNodeName().equals("TextField")){ 
     System.out.println(temp.item(i).getAttributes().getNamedItem("fx:id").getNodeValue()); 
    } 
} 

OUTPUT:

1: TextField 
_elevation 
2: #text 
関連する問題