同等のチェックボックスだから私は同等であるいくつかのチェックボックスがあります。 1 = 2 = 3という意味です(この場合)。 1 2または3のいずれかをチェック/チェック解除すると、他のチェック/チェック解除が行われます。 設定することはできますが、一度設定すると どれがチェックされていないかを確認するための明白な方法はありません。 関数ボックスの中ですべてがローカルでなければならないところに制約があるので。 だから私はLast_selected変数やそのようなものを持つことはできません。
これが私がこれまでに試したことです。
new window("Test",
cb = checkbox({"1", "2", "3", "4", "5"});
);
eq = Associative Array({{1, {2, 3}}, {2, {1, 3}}, {3, {1, 2}}});
cb <<SET function=""></SET>同等のチェックボックスについて私のオリジナルのアイデアをまだ追いかけています。 いくつかのことを単純化しますが、それらがたくさんある場合、チェックボックスハンドラの複雑さを増します。
Names Default to here(1);
new window("Test",
lineup box(ncol(2),
cb1 = checkbox(""),
tb1 = textbox("First Line\!NSecond Line\!NThird Line"),
cb4 = checkbox(""),
tb4 = textbox("Four"),
cb5 = checkbox(""),
tb5 = textbox("Five"),
)
);
同等のチェックボックスについてありがとう @Craige_Hales 。 それこそまさに私が必要としていたものです。
後世のために、これは私がやろうとしていることを行います。
Names Default to here(1);
new window("Test",
cb = checkbox({"1", "2", "3", "4", "5"});
);
eq = Associative Array({{1, {2, 3}}, {2, {1, 3}}, {3, {1, 2}}});
cb <<SET function=""></SET>同等のチェックボックスについて
f = Function( {this, which},
{default local},
n = N Items( this << getitems );
For( i = 1, i <= n, i++,
this << set( i, i != which )
);
(this << sib) << color( which );
);
New Window( "checkbox callback",
H List Box(
V List Box(
Check Box( Words( "1 2 3 4 5 6 7 8 9" ), <<SETFUNCTION></SETFUNCTION>
ボックスをチェックすると、他のすべてのボックスがチェックされます。
同等のチェックボックスについて実際には、それはもっと似ているから
1 - 1の説明、2 - 2の説明、3 - 3の説明
4の4の説明
5の5の説明
そして、ページ上にこれらのボックスがたくさんあり、それは非常に早く散らかっています。
そして時々7つの同等のものがある
それだけでなく、顧客が言った事実もこのようにしています。 :P
同等のチェックボックスについてユーザーインターフェースの観点からは、1、2、3は同じなので、1つのチェックボックスと組み合わせて表示するように画面を変更しないでください。すなわち
[] 1、2、3
[] 4
[] 5