SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(InputMan)

.NETでコンポーネントを利用し多彩な入力処理を行う

InputMan for .NET 4.0Jによる便利な入力インターフェイスの組み込み

  • X ポスト
  • このエントリーをはてなブックマークに追加

指定した文字・記号しか入力を受け付けない

 データ入力の際に、指定した文字しか入力できないようにしたい場合がありますが、VS標準のテキストボックスでは、面倒な入力処理を実装する必要があるため面倒です。

 InputManのマスクエディットコンポーネントを使うと、簡単に入力制限を設定できます。

半角の英数字だけ入力を受け付ける

 半角の英数字だけを入力できるようにしたい場合は、マスクエディットのタスクメニューから[書式を設定]を選び、[書式]で[半角-大文字のアルファベット][半角-小文字のアルファベット]を選びます。

書式の設定
書式の設定

 [書式]欄に「\A\a」と入力されますので、続けて「*」記号を入力します。

 「\A」が半角英字の大文字をあらわし、「\a」が半角英字の小文字を表します。また、「*」は入力文字数をいくつでも受け入れられるようにする記号です。

 この設定で、マスクエディットには半角の英字しか入力できなくなります。

半角の英数字と「.」「@」記号だけ入力を受け付ける

 入力制限に数字を指定する場合は、Formatプロパティに「\D」を指定します。また、特定の記号の入力を受け付けるようにするには、「\」とその記号を組み合わせて指定します。例えば、メールアドレスの入力に半角小文字の英字と数字、「-」「.」「@」以外の記号は入力できないようにするには、マスクエディットのタスクメニューから[書式を設定]を選び、[書式]欄に次のように入力します。

[\a\D\@\.\-]*

 マスクする文字や記号を[]で囲むようにして、最後に*記号を付けます。

 この[]は、マスクエディットに入力された文字が、[]内の文字のどれか1つにマッチすることを表す記号です。コンポーネントにあらかじめ設定されている\aや\A以外に、独自に記号などを指定する場合は[]で囲むようにします。

 また、[書式の設定]ダイアログでは、コンポーネントにフォーカスがある場合とない場合の表示文字を設定できます。

メールアドレスに使用する文字と記号しか入力できないように書式を設定する
メールアドレスに使用する文字と記号しか入力できないように書式を設定する

コントロールのプロパティのデフォルト値を変更する

 ツールボックスからコントロールを選んでフォームに配置したとき、プロパティにはデフォルトの値が設定されていますが、これをカスタマイズして専用の設定値を組み込みたい場合があります。

 例えば、あるコントロールのValueプロパティの値が、デフォルトで「0」になっているのを「100」に変更したい場合、残念ながらVS標準のコントロールではこのような操作を行うことはできません。

 しかし、InputManのコンポーネント群はプロパティのデフォルト値を自由に設定できるようになっているため、簡単に実現できます。

 方法は簡単で、まずプロパティウィンドウでプロパティの値を変更し、タスクメニューから[コントロールの既定値に設定]を選びます。プロパティ一覧のウィンドウが開くので、後は既定値に設定したいプロパティにチェックを入れるだけです。

 これで、次回以降そのコントロールをツールボックスからフォームに配置すると、プロパティのデフォルト値が変更した値に変わります。

NumberコンポーネントのMaxValue、MinValue、Valueプロパティのデフォルト値を変更しコントロールの既定値に設定する
NumberコンポーネントのMaxValue、MinValue、Valueプロパティのデフォルト値を変更しコントロールの既定値に設定する

次のページ
テキストボックス(エディット)に入力した英字を文字単位で折り返す

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
ComponentZine(InputMan)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/936 2009/03/17 11:58

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング