JavaFX Binding Örneği

1
2
3
4
5
6
var thisYear = 2008;
def lastYear = bind thisYear-1;
def nextYear = bind thisYear+1;
println("2008: {lastYear}, {thisYear}, {nextYear}");
thisYear = 1996;
println("1996: {lastYear}, {thisYear}, {nextYear}");

Output:
2008: 2007, 2008, 2009
1996: 1995, 1996, 1997

1
2
3
4
5
6
7
8
var flagA = true;
def flagB = bind not flagA;
def flagC = bind not flagB;
println("flagA = {flagA}, "
       "flagB = {flagB}, flagC = {flagC}");
flagA = false;
println("flagA = {flagA}, "
       "flagB = {flagB}, flagC = {flagC}");

Output:
flagA = true, flagB = false, flagC = true
flagA = false, flagB = true, flagC = false

1
2
3
4
5
6
7
8
9
10
11
12
var multiplier:Integer = 2;
var seqSrc = [ 1..3 ];
def seqDst = bind for(seqVal in seqSrc) { seqVal*multiplier; }

println("seqSrc = {seqSrc.toString()},"
        " seqDst = {seqDst.toString()}");
insert 10 into seqSrc;
println("seqSrc = {seqSrc.toString()},"
        " seqDst = {seqDst.toString()}");
multiplier = 3;
println("seqSrc = {seqSrc.toString()},"
        " seqDst = {seqDst.toString()}");

Output:
seqSrc = [ 1, 2, 3 ], seqDst = [ 2, 4, 6 ]
seqSrc = [ 1, 2, 3, 10 ], seqDst = [ 2, 4, 6, 20 ]
seqSrc = [ 1, 2, 3, 10 ], seqDst = [ 3, 6, 9, 30 ]

Leave a Reply