#module
#deffunc radiobutton str, int
mref caption, 32 : mref group, 1
if man ! -1 : dim man, 64 : memset man, 255, 64 * 4 // 管理変数を初期化
button caption, *_
man.stat = group
objsend stat, 0x00F4, 0x04, nonuse, 1 // ラジオボタンを配置
return
#deffunc getradio val, int
mref v, 16 : mref group, 1
v = -1
repeat 64
if man.cnt = group & (man.cnt ! -1) {
objsend cnt, 0x00F2, 0x00, nonuse, 1 // 状態取得
if stat & 0x03 : v = cnt : break
}
loop
return
#deffunc setradio int, int
mref id, 0 : mref value, 1
repeat 64
if man.cnt = -1 : continue
if cnt = id {
objsend cnt, 0x00F1, value, nonuse, 1 // 状態変更
} else {
if man.cnt = man.id : objsend cnt, 0x00F1, 0, nonuse, 1 // 状態変更
}
loop
return
*_
setradio stat, 1
stop
#global
sdim msg, 12, 5
msg = "男", "女", "20歳未満", "20〜64歳", "65歳以上"
objsize 200, 25
pos 10, 10 : mes "性別"
pos 10, 30 : radiobutton msg.0, 0
pos 10, 60 : radiobutton msg.1, 0
pos 10, 100 : mes "年齢"
pos 10, 120 : radiobutton msg.2, 1
pos 10, 150 : radiobutton msg.3, 1
pos 10, 180 : radiobutton msg.4, 1
pos 10, 250 : button "確認する", *check
stop
*check
getradio radio1, 0
if radio1 = -1 : dialog "性別が選択されていません" : stop
getradio radio2, 1
if radio2 = -1 : dialog "年齢が選択されていません" : stop
dialog "選択したのは" + msg.radio2 + "の" + msg.radio1 + "です"
stop
|