Window-05 エディットボックスに数字以外を入力できなくする

Q あるエディットボックスに、確実に数字のみを入力させたいのです。その方法は?
A SendMessage関数でメッセージを送りましょう。
どう使う?
'※RADツールで作成したウィンドウMainWnd上に、
'エディットボックスEditBox1が存在していることとする。


SetWindowLong(GetDlgItem(hMainWnd,EditBox1),GWL_STYLE, _
  GetWindowLong(GetDlgItem(hMainWnd,EditBox1),GWL_STYLE) Or ES_NUMBER)
'↑を実行後 数字しか入力できなくなる
これで終了です。簡単でしょ?
それもそのはず、実はこれだけでは欠陥があります。
キーボードからは確かに入力できませんが、文字列をコピーし、エディットボックス内を右クリックし「貼り付け」をクリックすると、数字以外のものも簡単に入力できてしまいます。
私としてはこれでは気が済みませんので、徹底的に貼り付けもできないようにしてしまいます。
これは次のWindow-06でご紹介します(徹底的に貼り付けできなくする方法だけを単独で使いたい、という方のために)。

メニューに戻る