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


HSPTV!掲示板


未解決 解決 停止 削除要請

2006
0522
ルーイヨッシーチェックボックスについて11解決


ルーイヨッシー

リンク

2006/5/22(Mon) 19:33:32|NO.821

チェックボックスを複数作って、一つをONにすると、
他のチェックボックスは全てOFFになるようにしたいのですが・・・



この記事に返信する


K

リンク

2006/5/22(Mon) 19:58:04|NO.822

プラグイン/モジュール
 標準命令のみ
グループ
 オブジェクト制御命令

>objprm p1,p2
>ここで指定されたオブジェクトをp2で指定したパラメータで変更します。
>チェックボックス : チェックのON/OFF(数値)

ヘルプ見てます?



Kpan

リンク

2006/5/22(Mon) 23:35:59|NO.826

ラジオボタンという手段はどうでしょう。



K

リンク

2006/5/23(Tue) 04:14:34|NO.827

ちょっと勘違いしてたみたい、すみません
(特定の一個がチェックされた時に他をOFFだと思った・・・)
ここの、マスコットを選ぶような感じのなら


pos 00,00 BA=8 dim buttAcnt,BA repeat BA button gosub "ボタンA"+cnt,*buttA buttAcnt(cnt)=stat sendmsg objinfo(stat,2),$f4,4,-1 ;ラジオボタンに変更 loop sendmsg objinfo(buttAcnt(0),2),$f1,1,0;{ON} pos 100,00 BB=5 dim buttBcnt,BB repeat 5 button gosub "ボタンB"+cnt,*buttB buttBcnt(cnt)=stat sendmsg objinfo(stat,2),$f4,4,-1 loop sendmsg objinfo(buttBcnt(0),2),$f1,1,0 pos 50,200 button goto "END",*endd stop *buttA idA=stat repeat BA if idA=buttAcnt(cnt) {sendmsg objinfo(idA,2),$f1,1,0 : chA=cnt}else{sendmsg objinfo(buttAcnt(cnt),2),$f1,0,0};{ON}else{OFF} loop title "グループA チェックNO"+chA+" ID"+idA+" グループB チェックNO"+chB+" ID"+idB return *buttB idB=stat repeat BB if idB=buttBcnt(cnt) {sendmsg objinfo(idB,2),$f1,1,0 : chB=cnt}else{sendmsg objinfo(buttBcnt(cnt),2),$f1,0,0} loop title "グループA チェックNO"+chA+" ID"+idA+" グループB チェックNO"+chB+" ID"+idB return *endd mes "グループA チェックNO"+chA+" ID"+idA+" グループB チェックNO"+chB+" ID"+idB clrobj buttAcnt(0),buttBcnt(BB-1) wait 300 end

チェックグループが一つならオートでON/OFF出来る
sendmsg objinfo(objid,2),$f4,9,-1

で、いいかも



ルーイヨッシー

リンク

2006/5/23(Tue) 06:59:25|NO.828

ありがとうございます!
試してみます!



ルーイヨッシー

リンク

2006/5/23(Tue) 07:28:17|NO.829

・・・・・・
すいません、頭痛くなってきました・・・
ウインドウオブジェクトIDってなんですか?



通りすがり

リンク

2006/5/23(Tue) 12:54:06|NO.831

Kpanに質問なのですが
ラジオボタンの機能ってあるんですか
ヘルプで調べてみましたが
引っかからないですよ
どうしたらいいのでしょう



K

リンク

2006/5/23(Tue) 15:39:41|NO.834

>ウインドウオブジェクトIDってなんですか?

普段オブジェクを使わないので、昨日調べた範囲ですが

ウインドウオブジェクトID>HSPオブジェクトID button mesbox chkbox input等の制作時のナンバー(制作時statに返される値)

このIDを使ってウィンドウハンドルを objinfo(objID,2)で収得する
(ボタンを作ってからラジオボタンに見た目を変えるので)

sendmsg objinfo(stat,2),$f4,4,-1の $f4,4,-1はラジオボタンにする為の決まりごとだと思えばいい
詳しくはHSPwikiで objsend命令で調べれば書いてある(3.0と仕様が同じかはよく分からない)


>通りすがり
>ラジオボタンの機能ってあるんですか

NO.827をコピペして実行してみ


>どうしたらいいのでしょう

Win側の機能を利用する感じで出来るみたいです。
HSPでボタンを設置(button等)>Win側でラジオボタンに変更してもらう(sendmsg)

Vramを、自由に使えるなら無理にウィンドウボタンを使う必要は無いと思うけど・・・



ルーイヨッシー

リンク

2006/5/23(Tue) 16:53:05|NO.835

やってみたんですが、確かにラジオボックスになりました。
でも、クリックしてもチェックが入らない・・・

button gosub "buffer",*buff sendmsg objinfo(stat,2),$f4,4,-1 button gosub "picload",*picl sendmsg objinfo(stat,2),$f4,4,-1 button gosub "mes",*me sendmsg objinfo(stat,2),$f4,4,-1
としていますが、問題があるんでしょうか。
あと、ついでに聞きたい事が。

*buff gsel 0 mes "pres" return
とするとサブルーチンにしたつもりなのにならない・・・なぜだ?



K

リンク

2006/5/23(Tue) 18:12:26|NO.836

>でも、クリックしてもチェックが入らない・・・
>としていますが、問題があるんでしょうか。

NO.827に・・・
>チェックグループが一つならオートでON/OFF出来る
>sendmsg objinfo(objid,2),$f4,9,-1

自分でON(OFFもNO.827にある)
>sendmsg objinfo(buttAcnt(0),2),$f1,1,0;{ON}

>とするとサブルーチンにしたつもりなのにならない・・・なぜだ?
Win側の機能を利用するので、タスクを移す必要がある(await,wait,stop)



Kpan

リンク

2006/5/23(Tue) 21:29:34|NO.837

>通りすがりさん
標準命令はありませんが、ラジオボタンというのは内部的には
ボタンオブジェクトです。

http://www.geocities.co.jp/Playtown-Yoyo/6130/hsp/hsp_object1.htm#11



ルーイヨッシー

リンク

2006/5/24(Wed) 07:06:41|NO.844

ながながとアレはナニ?コレはナニ?と聞いて申し訳ありませんでした。
今作っているものが出来たときには配布します。
ぜひつっこんでください(笑

ありがとうございました。

関係ないけど、

sendmsg objinfo(buttAcnt(0),2),$f3,1,0
だと押された状態のボタンになりますね。



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