指定した文字・記号しか入力を受け付けない
データ入力の際に、指定した文字しか入力できないようにしたい場合がありますが、VS標準のテキストボックスでは、面倒な入力処理を実装する必要があるため面倒です。
InputManのマスクエディットコンポーネントを使うと、簡単に入力制限を設定できます。
半角の英数字だけ入力を受け付ける
半角の英数字だけを入力できるようにしたい場合は、マスクエディットのタスクメニューから[書式を設定]を選び、[書式]で[半角-大文字のアルファベット][半角-小文字のアルファベット]を選びます。
[書式]欄に「\A\a」と入力されますので、続けて「*」記号を入力します。
「\A」が半角英字の大文字をあらわし、「\a」が半角英字の小文字を表します。また、「*」は入力文字数をいくつでも受け入れられるようにする記号です。
この設定で、マスクエディットには半角の英字しか入力できなくなります。
半角の英数字と「.」「@」記号だけ入力を受け付ける
入力制限に数字を指定する場合は、Format
プロパティに「\D」を指定します。また、特定の記号の入力を受け付けるようにするには、「\」とその記号を組み合わせて指定します。例えば、メールアドレスの入力に半角小文字の英字と数字、「-」「.」「@」以外の記号は入力できないようにするには、マスクエディットのタスクメニューから[書式を設定]を選び、[書式]欄に次のように入力します。
[\a\D\@\.\-]*
マスクする文字や記号を[]で囲むようにして、最後に*記号を付けます。
この[]は、マスクエディットに入力された文字が、[]内の文字のどれか1つにマッチすることを表す記号です。コンポーネントにあらかじめ設定されている\aや\A以外に、独自に記号などを指定する場合は[]で囲むようにします。
また、[書式の設定]ダイアログでは、コンポーネントにフォーカスがある場合とない場合の表示文字を設定できます。
コントロールのプロパティのデフォルト値を変更する
ツールボックスからコントロールを選んでフォームに配置したとき、プロパティにはデフォルトの値が設定されていますが、これをカスタマイズして専用の設定値を組み込みたい場合があります。
例えば、あるコントロールのValue
プロパティの値が、デフォルトで「0」になっているのを「100」に変更したい場合、残念ながらVS標準のコントロールではこのような操作を行うことはできません。
しかし、InputManのコンポーネント群はプロパティのデフォルト値を自由に設定できるようになっているため、簡単に実現できます。
方法は簡単で、まずプロパティウィンドウでプロパティの値を変更し、タスクメニューから[コントロールの既定値に設定]を選びます。プロパティ一覧のウィンドウが開くので、後は既定値に設定したいプロパティにチェックを入れるだけです。
これで、次回以降そのコントロールをツールボックスからフォームに配置すると、プロパティのデフォルト値が変更した値に変わります。