HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0830
rosenbargラジオボタンの監視5未解決


rosenbarg

リンク

2007/8/30(Thu) 01:37:17|NO.10765

下のようにラジオボタンを作成したのですが、
チェックボックスのように変数s1,s2,s3でラジオボタンの情報の取得ができません。
s1,s2,s3は、ラジオボタンのクリックによって0と1の変化をしません。
なにか良い方法があったらお願いします。


chkbox "あ", s1
sendmsg objinfo (stat, 2), $F4, $9

chkbox "い", s2
sendmsg objinfo (stat, 2), $F4, $9

chkbox "う", s3
sendmsg objinfo (stat, 2), $F4, $9



この記事に返信する


tks

リンク

2007/8/30(Thu) 03:53:21|NO.10767

こんな感じで良い? まあ他にも方法はありそうですが。

chkbox "あ", s1 sendmsg objinfo(stat, 2), $F4, $9 chkbox "い", s2 sendmsg objinfo(stat, 2), $F4, $9 chkbox "う", s3 sendmsg objinfo(stat, 2), $F4, $9 sendmsg objinfo(1,2),$f1,1,0 ;"い"にチェックを入れてみる sendmsg objinfo(0,2),$f0,0,0 s1=stat sendmsg objinfo(1,2),$f0,0,0 s2=stat sendmsg objinfo(2,2),$f0,0,0 s3=stat mes ""+s1+","+s2+","+s3
HSP2.6のobjsend命令リファレンスマニュアル
http://quasiquote.org/hspwiki/HSP2.6%3aOBJSEND
をヒント程度に。



rosenbarg

リンク

2007/8/31(Fri) 00:24:02|NO.10797

ありがとうございます。

恐縮ですが、さらに質問です。
ラジオボタンを配置した直後でなく、他のオブジェクトの操作などをしたあとに

sendmsg objinfo(0,2),$f0,0,0
s1=stat

で取得しようとしましたが、たとえチェックが入っていてもs1には0しか入りません。
ラジオボタン配置直後でないときは、sendmsgやobjinfoのパラメータ変えなければならなかったりするのでしょうか?
サンプルのようにラジオボタン配置の直後に行えば問題ないのですが・・・。



tks

リンク

2007/8/31(Fri) 00:35:46|NO.10798


chkbox "あ", s1 a_id=stat sendmsg objinfo(a_id, 2), $F4, $9 ;処理 sendmsg objinfo(a_id,2),$f0,0,0 s1=stat
のようにオブジェクトIDをあわせる必要があるのと、
ウィンドウを複数使用している場合は操作先のウィンドウIDも
あわせる必要があります。

どんな操作をした場合に取得できませんか?



rosenbarg

リンク

2007/8/31(Fri) 04:33:38|NO.10801

オブジェクトIDを合わせることはできました。

ウィンドウIDについては、ID:1でラジオボタンを作成し、
ID:0でボタンを配置した後、キー入力待ちをしていて、

if ginfo(2)=1{
sendmsg objinfo(a_id,2),$f0,0,0
s1=stat
(略)
}
でラジオボタンの状態をチェックするという流れです。
この前にgsel 1,1とすれば良いのでしょうか?



tks

リンク

2007/8/31(Fri) 12:34:30|NO.10808

> この前にgsel 1,1とすれば良いのでしょうか?

ウィンドウをアクティブにする必要はないので、

gsel 1;またはgsel 1,0 sendmsg objinfo(a_id,2),$f0,0,0 s1=stat
で操作先ウィンドウを切り替えればよろしいかと。

> if ginfo(2)=1{
だとウィンドウID:1がアクティブでない限りチェックしませんが、その点は
大丈夫でしょうか?

(スクリプトを書き込む場合は<pre>〜</pre>(本当は半角)で囲みましょう。)



ONION software Copyright 1997-2023(c) All rights reserved.