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


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0715
掛布団カーソルキーで選択するメニュー3解決


掛布団

リンク

2007/7/15(Sun) 21:16:10|NO.9532

作り方をぐぐったりして調べたんですけどどれもイマイチよくわからなくて・・・
誰か分かりやすく説明してほしいのですが
あと、やはりこれを作る時は「モジュールとやらを使わねばならないのでしょうか」



この記事に返信する


Kpan

リンク

2007/7/15(Sun) 21:53:32|NO.9534

↓付属のサンプルとは違うものでしょうか?
sample\basic\stick.hsp



Drip

リンク

2007/7/15(Sun) 22:00:15|NO.9535

Dripです。

 掛布団さん、こんにちは。
Windowsで独自描画のメニューやボタン等を作成する場合は、
画面をリアルタイムで書き換えながら行うことが基本です。
一見画面が止まっているように見えるものでも、実は一秒間の間に何回も画面を書き換えて
表示しています。下に独自描画メニューのサンプルを示します。

menu(0)="ぼうけんをはじめる" //メニューの内容 menu(1)="ぼうけんのしょをつくる" menu(2)="ぼうけんのしょをうつす" menu(3)="ぼうけんのしょをけす" menu(4)="メモリーカードユーティリティ" cur=0 //最初のカーソルの位置 mp=20,10,270,170 //メニューの位置(x,y)とサイズ(x,y) font "MS ゴシック",14 //使用するフォント repeat stick ky if ky=2 & cur>0:cur-- //カーソルを上に移動 if ky=8 & cur<length(menu)-1:cur++ //カーソルを下に移動 if ky=16:dialog ""+menu(cur),0,"決定" //スペースキーで決定 redraw 0 //画面の更新をしない color 220,240,255:boxf //背景をクリアする color:boxf mp(0),mp(1),mp(0)+mp(2),mp(1)+mp(3) //メニューの枠を描画する color 255,255,255:boxf mp(0)+2,mp(1)+2,mp(0)+mp(2)-2,mp(1)+mp(3)-2 color:boxf mp(0)+4,mp(1)+4,mp(0)+mp(2)-4,mp(1)+mp(3)-4 color 255,255,255:pos mp(0)+40,mp(1)+20 repeat length(menu) //メニューの内容を描画する if cur=cnt:curp=ginfo_cy //カーソルの位置を特定 mes menu(cnt)+"\n" loop if cnt\10<7:pos mp(0)+18,curp:mes "●" //カーソルをカーソルの位置に描画する redraw 1 //画面を一気に書き換える await 30 //100分の3秒待つ loop
やりかたは無限にあるので、掛布団さんが開発されているソフトに最も合う方法を見つけて、
自分なりに組んでみてください。

 モジュールについて少し触れてみますと、モジュールは上で示したようなプログラムを
よりスッキリ書く方法の一つと言えます。すぐに勉強しなければならないことでもないので、
プログラムを書いていて「同じ処理の繰り返しが山ほど出てきた、どうにかならないか?」と
思った時に調べてみてください。HSP付属マニュアルにもモジュールについて詳しく書かれています。



掛布団

リンク

2007/7/16(Mon) 00:42:52|NO.9538

ちょっとよくわからないですけど
自分で色々やってみたらできました
こんなくだらない事でスレ立ててすいません><;
ありがとうございました



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