0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[JavaFX]親ノードの取得の仕方

Last updated at Posted at 2020-01-14

親ノード取得についての情報少ねぇ!

ってんで勢いで書いていきます
筆者はSceneBuilder派なのでプログラムでノードを追加する処理とか知りませんので、そこは…ね?
調べ学習って言葉があるじゃん?

親ノード取得するプログラム

まずは形式だけ

なんか.java
Node parent = 子Node.parentProperty().get();

具体的に書くと

なんか.java
Slider slider;
/*~~スライダーを追加したりする処理(各自よろしく)~~*/
Node parent = slider.parentProperty().get();

兄弟?ノードを取得する

例えばこんな状況あるとするじゃん?
image.png
兄弟?姉妹?のラベル「Label ズーム倍率」を取得するには

兄弟姉妹を取得.java
Slider slider;//上記画像で青マーカー引かれてるやーつー
/*~~スライダーを追加したりする処理(各自よろしく)~~*/

Node bro= slider.parentProperty().get().getChildrenUnmodifiable().get(0);

Node.getChildrenUnmodifiable()で子ノード一覧のリストを取得できるから、
子ノード一覧のはじめの要素→.get(0)でLabelのノードを取得できる

ノードのクラスを得る

例えばラベルノードのLabelを得るなら

クラスを取得.java
Node node = どっかのラベルノード;

Label label= (Label)node;

まあキャストするだけですね

親の子のクラスを得る

image.png
つまりsliderから親を辿ってLabelクラスを得るには

クラスを取得.java
Slier slider;
/*~~スライダーを追加したりする処理(各自よろしく)~~*/

Label label= (Label)slider.parentProperty().get().getChildrenUnmodifiable().get(0);

以上です

以上です

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?