So-net無料ブログ作成
検索選択

数値のみの入力しか受け付けなくする。Button上でのマウスカーソルアイコンを変える。 [汎用ゲームマップエディタ : FB]

数値のみの入力しか受け付けないようにする。EditFieldで色々やってみたけれど、今イチ。そこで、FutureBASIC4 CDに入っているサンプルソースで良さそうなものがあった。

Examples > ** Donations ** > Robert P's Favorite Examples > Text and Edit Fields > Key filter for EditText control

早速、実装。いい感じです。しかしこのフィルタ、入力部分の見た目はまるっきり、EditFieldなんですが実はEditFieldではなく文字入力が出来るApperanceButtonを使用しているので、先日実装した「EditField上でマウスカーソルアイコンを変える」が、数値入力部上では動作しなくなりました。そこで、

ev = DIALOG(0)
id = DIALOG(ev)

SELECT ev

〜中略〜

 CASE _cursOverNothing
  CURSOR = _arrowCursor

 CASE _cursOverBtn,_cursOverEF
  SELECT id

   CASE _Mapx,_Mapy,_Stage,_ProjectNames
    CURSOR = _IBeamCursor

  END SELECT

〜中略〜

END SELECT

こんな感じに変えました。それぞれIDで指定しないとポップアップボタンにまで反応してしまうので。そこで気になったのが、EditFieldのTEXT内容を所得するにはEDIT$()を使うというのは知ってましたが、ApperanceButtonのTEXT内容所得ってどうやるのかは分からない。調べてみた所、それらしいやり方が見つかったので、試しに次の関数を追加してテストしてみました。最終的にはTEXTを数値に変えなければならないので、それも兼ねて。

LOCAL FN Okay //OKボタンを押すとこの関数へ

DIM dat
DIM As STR255 TextString
TextString = FN ButtonTextString$ (_Mapy) //文字所得(マップの広さのyを入力するフィールドから)
dat=VAL(TextString) //文字を数値に
 PRINT dat

END FN

バッチリです。


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この記事のトラックバックURL:
※言及リンクのないトラックバックは受信されません。

関連リンク

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。