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


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0107
旧暦ボタンをクリックしたあと、ジャンプさせてメッセージを出すには?10解決


旧暦

リンク

2013/1/7(Mon) 12:10:18|NO.51700

題名の通り、ボタンをクリックしたあと、メッセージが出てくるようにしたいのですがどう
すればいいでしょうか?

mes"文字列" // ボタンの設置 ; 表示位置 pos 100, 200 ; 表示サイズ (指定がない場合の大きさは64x24) objsize 100, 40 ; 設置 button "スタート", *jump_a mes "オブジェクトID "+stat *jump_a mes "文字列", , "オブジェクトID : "+stat stop
です。
どうすれば、ボタンをクリックすると、メッセージがでるようになりますか?
お願いします。



この記事に返信する


Nasu

リンク

2013/1/7(Mon) 12:44:05|NO.51701

mes"文字列"
// ボタンの設置 ; 表示位置 pos 100, 200 ; 表示サイズ (指定がない場合の大きさは64x24) objsize 100, 40 ; 設置 button "スタート", *jump_a mes "オブジェクトID "+stat stop //ここにStopがないと止まらず下まで行っちゃいます。 *jump_a mes "文字列", , "オブジェクトID : "+stat stop

こういう事ですか?
でもこのままだとjump_aのmesでエラー出ますよ。
文字列とオブジェクトIDの間に変数を表示したいなら

mes "文字列",+変数名+, "オブジェクトID : "+stat

特になにも表示しないなら
mes "文字列 オブジェクトID : "+stat

でOKです。



旧暦

リンク

2013/1/7(Mon) 14:15:36|NO.51702

だいたいはわかりました、ありがとうございます。
ですが、これで実行し、 ボタンを押すと、

文字列 オブジェクトID : 0

と出てきます。この オブジェクトID : 0 というのが、邪魔なんですが消せますか?
ついでに、ボタンの下の、 オブジェクトID 0 というのも消せますか?



HSP歴10ヶ月位

リンク

2013/1/7(Mon) 14:47:00|NO.51703


button "スタート", *jump_a stop *jump_a Dialog "メッセージ",,"タイトル"
多分これが一番わかりやすいソース。
Dialogの使い方はヘルプを見れば詳しく乗ってますよー。




旧暦

リンク

2013/1/7(Mon) 15:03:35|NO.51704

ありがとうございます。
これで、実行すると、最初のメッセージの後にでてきてしまいます。
新しくなにもないところに、メッセージを表示したいのですが
どうすれば、いいでしょう。



ppr

リンク

2013/1/7(Mon) 15:04:35|NO.51705

その前にラベルやオブジェクトの事をよく理解していますか?



f(年始中)

リンク

2013/1/7(Mon) 16:00:37|NO.51706

>と出てきます。この オブジェクトID : 0 というのが、邪魔なんですが消せますか?
>ついでに、ボタンの下の、 オブジェクトID 0 というのも消せますか?

ここで眩暈の様な物を感じた。

考えさせてやらずに、ほいほいと答えを与えるから
こうやって考える事を止めた発言が出てくるのだと思うが
どうか。



@key

リンク

2013/1/7(Mon) 16:04:16|NO.51707

pos命令をmesなどの前で実行すると表示する位置を指定できます
指定する位置はx,y座標で、ウィンドウ左上が0,0。そこから1ドットずつ増えていきます


pos 0,0
mes "1"
pos 0,50
mes "2"



HSP歴10ヶ月位

リンク

2013/1/7(Mon) 16:54:40|NO.51708

>考えさせてやらずに、ほいほいと答えを与える

そうですね・・・今後は気をつけます。



旧暦

リンク

2013/1/8(Tue) 14:09:23|NO.51717

なんか、すいませんでした。

これからは、自分で調べて
それでなお答えがでなかった場合のみ質問いたします。

大変失礼しました。
そうですよね、自分で考えたほうがプログラミング知識も伸びますよね。

真に失礼いたしました
出直してきます。



ppr

リンク

2013/1/8(Tue) 15:23:46|NO.51718

色々とコメントを見て解決しなさそうな感なので・・・書ける分だけ置いておきます。


mes "押される前";押される前のメッセージ button "押す",*main;ラベルへジャンプ stop;実行ストップ *main;ジャンプ先のラベル mes "ボタンが押されました。" ;先に何もないと自動的にストップ



//----HSPヘルプ丸コピ----//

カレントポジションにオブジェクトとして押しボタンを配置します。
ボタンには、"name"で指定された文字列が書かれ、マウスでボタンをクリックすると、*labelで指定した場所にプログラムの制御が移ります。

button gotoと記述した場合は、ラベルにジャンプ。button gosubと記述した場合は、 ラベルにサブルーチンジャンプを行ないます。goto、gosubキーワードを省略した場合には、gotoと同じ動作になります。

例 :
button gosub "ボタン",*aaa ; *aaaを呼び出すボタンを作成


オブジェクトの大きさはobjsize命令で指定することができます。 ボタンを配置すると、カレントポジションは次の行に自動的に移動します。

ボタンが押された時にジャンプして実行されるプログラムでは、システム変数statの初期値としてオブジェクトIDが代入されます。

通常は、ボタンの形状としてWindowsシステムで用意されたものが使用されます。
ただし、objimage命令によって画像を使用したカスタムボタンの設定が行なわれている場合は、自由な外観にすることができます。
カスタムボタンの設定については、objimage命令の項を参照してください。



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