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


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0823
Garry050どこかのスレからデスクトップアイコンみたいな感じのソースコードを拝借したんですが...7解決


Garry050

リンク

2013/8/23(Fri) 16:56:50|NO.56611

どこかのスレのソースコードを拝借して、デスクトップのアイコンをボタン化してみたんですが

celload "Image\\deskicon1.png" ,2 celdiv 2,104,70 picload "Image\\1.bmp" buffer 1,104*3,70 //ボタン用バッファ repeat 3 //ボタン用バッファに配置場所の画像とボタン画像をコピー pos 104*cnt,0 gmode 0 gcopy 0,0,0,104,70 //ボタンの配置場所の画像をボタン画像をコピーする場所にコピー pos 104*cnt,0 gmode 2 celput 2, cnt //ボタン画像をボタン用バッファにコピー loop celload "Image\\deskicon2.png" ,4 celdiv 2,104,70 buffer 2,104*3,70 repeat 3 pos 104*cnt,0 gmode 0 gcopy 0,0,0,104,70 //ボタンの配置場所の画像をボタン画像をコピーする場所にコピー pos 104*cnt,0 gmode 2 celput 4, cnt //ボタン画像をボタン用バッファにコピー loop gsel 0, 1 pos 0, 0 objsize 104,70 objimage 1, 0, 0, 104, 0, 104*2,0 button "", *notepad objimage 2, 0, 0, 104, 0, 104*4,0 button "", *notepad stop *notepad
で2つのアイコンを設置したのですが、2つ目のボタンが正常に表示してくれません
どうやったらうまく表示できるのですか?

http://ux.getuploader.com/Cydia_hatena7/download/7/Image.zip
画像はここです



この記事に返信する


流星群/poteto0413

リンク

2013/8/23(Fri) 17:50:01|NO.56612

今少しソースコードを読んでどうすべきか見ているところです。
今すぐ回答はできませんが、解り次第書かせていただきます。

取り敢えず自分で原因を見つける方法として、
bufferをscreenに変えて確認しながらソースコードの問題点を
見ていくのはどうでしょうか。
値はLogmes辺りで表示して。

あと、celloadのIDとscreen,bufferのIDが関係あるかは忘れましたが、
なるべく同じIDは使わないほうが良いと思います。

また、この場合、cel関連ではなく、picloadのみでいけると思うのですが。
というよりそっちの方が楽かと



Garry050

リンク

2013/8/23(Fri) 17:59:55|NO.56613

screenと、picloadで確認すると、背景を黒に塗りつぶした部分のみボタンとなってます。



koya

リンク

2013/8/23(Fri) 18:03:37|NO.56614

https://skydrive.live.com/?mkt=ja-JP#cid=AE2483B69FEE9E29&id=AE2483B69FEE9E29%21517
のWindows 777.zipにあるWindows 777.hspを参考にしてみてください。



Garry050

リンク

2013/8/23(Fri) 18:09:39|NO.56615

>>kayaさん
要するにボタンを1つつけたらもう一回付け直す(?)って感じかな?



流星群/poteto0413

リンク

2013/8/23(Fri) 18:14:42|NO.56616

えーと、調査結果です。
取り敢えず今のソースを弄った場合、これで対処出来ました。

celload "deskicon1.png" ,2 celdiv 2,104,70 picload "1.bmp" buffer 1,104*3,70 //ボタン用バッファ repeat 3 //ボタン用バッファに配置場所の画像とボタン画像をコピー pos 104*cnt,0 gmode 0 gcopy 0,0,0,104,70 //ボタンの配置場所の画像をボタン画像をコピーする場所にコピー pos 104*cnt,0 gmode 2 celput 2, cnt //ボタン画像をボタン用バッファにコピー loop celload "deskicon2.png" ,4 buffer 2,104*3,70 gsel 2 repeat 3 pos 0,0 gmode 0 gcopy 4,0,0,104*3,70 //ボタンの配置場所の画像をボタン画像をコピーする場所にコピー loop gsel 0, 1 pos 0, 0 objsize 104,70 objimage 1, 0, 0, 104, 0, 104*2,0 button "", *notepad objimage 2, 0, 0, 104, 0, 104*2,0 button "", *notepad stop *notepad

また、完全に別物になっちゃっていますが、
celload/putが余計と感じたので、
一部以外全部新しく書いちゃいました。
正直、picloadで読み込んだ方が数倍楽だと思います。
役に立つかもしれませんので、
取り敢えずこちらもソースを載せておきます。

#define ICONMAX 2 // アイコン表示最大数 buffer 1 picload "1.bmp" //デスクトップ背景画像 repeat ICONMAX,1 buffer (cnt+1) picload "deskicon"+cnt+".png" loop //アイコンロード /*もしアイコンを一つのバッファにまとめる場合 buffer 30 repeat ICONMAX,2 pos 0 //これでx軸のみ0に。y軸はそのまま。 gmode 0 gcopy cnt, 0, 0, 104*3, 70 loop もしアイコンを一つのバッファにまとめる場合*/ screen 0,640,480 gsel 0, 1 //スクリーン初期化(特にする必要はないけど)gsel pos 0, 0 gcopy 1, 0, 0, 640, 480 //背景描画 pos 0, 0 objsize 104,70 objimage 2, 0, 0, 104, 0, 104*2,0 button "", *notepad objimage 3, 0, 0, 104, 0, 104*2,0 button "", *notepad //アイコンセット(取り敢えずボタンなので描画ではなくセットと書いておきます。 stop *notepad dialog "click"



Garry050

リンク

2013/8/23(Fri) 18:17:18|NO.56617

なんとか出来ました。どうやら値の問題でした。kayaさんのWindows777もどきのソースコードをみて
もしやと思って値を変更すると出来ました。

celload "Image\\deskicon1.png" ,2 celdiv 2,104,70 picload "Image\\1.bmp" buffer 1,104*3,70 //ボタン用バッファ repeat 3 //ボタン用バッファに配置場所の画像とボタン画像をコピー pos 104*cnt,0 gmode 0 gcopy 0,0,0,104,70 //ボタンの配置場所の画像をボタン画像をコピーする場所にコピー pos 104*cnt,0 gmode 2 celput 2, cnt //ボタン画像をボタン用バッファにコピー loop celload "Image\\deskicon2.png" ,4 celdiv 4,104,70 buffer 2,104*3,70 repeat 3 //ボタン用バッファに配置場所の画像とボタン画像をコピー pos 104*cnt,0 gmode 0 gcopy 0,0,0,104,70 //ボタンの配置場所の画像をボタン画像をコピーする場所にコピー pos 104*cnt,0 gmode 2 celput 4, cnt //ボタン画像をボタン用バッファにコピー loop gsel 0, 1 pos 0, 0 objsize 104,70 objimage 1, 0, 0, 104, 0, 104*2,0 button "", *notepad objimage 2, 0, 0, 104, 0, 104*2,0 button "", *notepad stop *notepad



Garry050

リンク

2013/8/23(Fri) 18:18:39|NO.56618

ありゃw書き込みされてたw
参考にします(^^)ありがとうございました!



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