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


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
1012
たぬき入力ボックス3未解決


たぬき

リンク

2008/10/12(Sun) 19:23:27|NO.20076

このスレを見てくださりありがとうございます。

現在、ログイン画面を作っている者なのですが、
数字をボタン押しで入力してもらうようにしたいのですが、
例えば「1」という数字を2回押すと「11」(じゅういち)
にしたいのですが、↓のソースだと「1」を2回押しても「1」にしか
なりません。どうすれば良いでしょうか?アドバイスお願いします。

ソース↓
*ue
cls
input A,,,,
button "1",*ichi
stop

*ichi
A = 1
goto *ue



この記事に返信する


GENKI

リンク

2008/10/12(Sun) 19:39:50|NO.20078

今のままでは、ボタンが押されるたびにオブジェクトを作り直しているので、
ボタンを押すたびに画面がちらちらします。
オブジェクトの中身を書き換えるならobjprm命令を使用するといいですよ。


さて、本題です。ボタンを押しても「1」にしかならないのは、
変数Aの内容がボタンを押しても常に1にしかならないからです。
スクリプトを処理される順番どおり、順に追いかけてみてください。

解決のヒントとして

a = "A" b = "B" c = 3 mes a a = a + b mes a a = a + str(c) mes a
各命令の詳細は、まずはヘルプ参照。



SYAM

リンク

2008/10/12(Sun) 19:51:19|NO.20079

元のスクリプトを見る限り、HSPの変数には「文字列変数」と「数値変数」があることを意識していないように見えます。
もし、まだ理解していないのであれば、命令の使い方よりもまず先に文字変数と数値変数の違いを習得してください。

※でないと、GENKIさんの回答を読み解くことさえ、ままならないハズです…。



エレキ掃除機

リンク

2008/10/12(Sun) 21:26:03|NO.20085

こんな感じですか?

A="1" cls input A,,,, button "1",*ichi stop *ichi A += "1" objprm 0,A
種明かししてすいません。



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