Java
1changeListener.changed(null, oldvalue, newValue);
と、ダミーで呼びたいと言うのはまあ場合によってはあるかなと思いますが
中身は必要ないのですが、インスタンスだけが欲しいです。
というのはどういうことですか?
なにかしらのProperty
にaddListener
しているんですよね?
そのProperty
の値が変われば、ov
に自身が入って呼ばれます。
changed
を呼んだところで元のProperty
は変わりませんが、それでいいのでしょうか?
Java
1import javafx.beans.property.ObjectProperty;
2import javafx.beans.property.SimpleObjectProperty;
3import javafx.beans.value.ChangeListener;
4import javafx.beans.value.ObservableValue;
5
6public class Main {
7 public static void main(String[] args) {
8 ObjectProperty property = new SimpleObjectProperty();
9 ChangeListener changeListener = (ObservableValue ov, Object o, Object n) -> {
10 if (ov == null) {
11 System.out.println("change:" + ov + " " + o + "->" + n);
12 } else {
13 System.out.println("change:" + ov + " " + o + "->" + n);
14 }
15 };
16 property.addListener(changeListener);
17
18 property.set(1);
19
20 changeListener.changed(null, 2, 3);
21 changeListener.changed(property, 4, 5);
22
23 ObservableValue dummy = new SimpleObjectProperty("dummy");
24 changeListener.changed(dummy, 6, 7);
25
26 System.out.println();
27 System.out.println(property);
28 System.out.println(dummy);
29 }
30}
change:ObjectProperty [value: 1] null->1
change:null 2->3
change:ObjectProperty [value: 1] 4->5
change:ObjectProperty [value: dummy] 6->7
ObjectProperty [value: 1]
ObjectProperty [value: dummy]
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/07 01:42