※VBヘルプより抜粋(文章内のリンクは無効です)
コントロールのリスト部分の項目を設定します。値の取得も可能です。リスト部分に含まれる各項目は、文字列配列に格納されています。リスト ボックス (ListBox) コントロールおよびコンボ ボックス (ComboBox) コントロールは、プロパティ ウィンドウによってデザイン時に値を使用できます。ディレクトリ リスト ボックス (DirListBox)、ドライブ リスト ボックス (DriveListBox)、およびファイル リスト ボックス (FileListBox) の各コントロールの場合、実行時には値の取得のみ可能です。コンボ ボックス コントロールおよびリスト ボックス コントロールの場合は、実行時に値の取得および設定が可能です。
構文
object.List(index) [= string]
List プロパティの構文の指定項目は次のとおりです。
指定項目 | 内容 |
object | 「対象」一覧内のいずれかのオブジェクトを指すオブジェクト式です。 |
index | リスト内の特定の項目の番号を指定します。 |
string | リストの項目を示す文字列式を指定します。 |
解説
List プロパティは、リスト内の項目にアクセスするときに使われます。
ディレクトリ リスト ボックス (DirListBox) 以外のすべてのコントロールでは、配列のインデックスは、0 から始まり、最大値は "項目数 -1" です。項目数は、ListCount プロパティで調べることができます。
ディレクトリ リスト ボックス コントロールでは、実行時にコントロールが作成された時点のディレクトリおよびサブディレクトリの状態に従って、インデックスが割り当てられます。現在展開されているディレクトリのインデックスは、-1 になります。また、展開されたディレクトリよりも上の階層のディレクトリには、階層の低い順から順番に負の値が割り当てられます。つまり、すぐ上の階層のディレクトリが -2、その上の階層のディレクトリが -3、という順番で割り当てられます。一方、展開されているディレクトリの下のディレクトリには、"0 〜項目数 -1" の値が順番に割り当てられます。
コンボ ボックス コントロールおよびリスト ボックス コントロールを生成した直後は、何も項目がない状態です。一方、ファイル関係のコントロールでは、実行時にそのコントロールが作成された時点のファイル システムの状態が、初期値として読み込まれます。
List プロパティは、ListCount プロパティおよび ListIndex プロパティと組み合わせて使用します。
ディレクトリ リスト ボックス以外のコントロールでは、0 〜項目数 -1 の範囲の値でリストの項目を返します。ディレクトリ リスト ボックス コントロールでは、-n 〜項目数 -1 の範囲の値で現在展開されているディレクトリの上の階層のディレクトリとすべてのサブディレクトリを返します。ここで、n は現在展開されているディレクトリの上に存在するディレクトリの階層の数を示します。
メモ コンボ ボックス コントロール、リスト ボックス コントロールに項目を追加するには、AddItem メソッドを使い、項目を削除するには RemoveItem メソッドを使います。リスト内の項目を特定の照合順序に従って並べるには、項目を追加する前にコントロールの Sorted プロパティを真 (True) に設定しておきます。
宣言セクションで Option Base = 1
と宣言しても、コントロール内の要素に付けられる順番は変化しません。最初の要素は常に 0 になります。
リスト ボックスコントロールにおいて、List プロパティのインデックスとして実際には存在しない範囲の値を設定すると、長さ 0 の文字列が返されます。たとえば、コンボ ボックス
コントロールおよびリスト ボックス コントロールでは、List(-1)
は長さ 0 の文字列を返します。
コンボ ボックス (ComboBox) コントロール、またはリスト ボックス (ListBox) コントロールに含まれる各項目に、個別の番号を設定します。値の取得も可能です。
構文
object.ItemData(index) [= number]
ItemData プロパティの構文の指定項目は次のとおりです。
指定項目 | 内容 |
object | 「対象」一覧内のいずれかのオブジェクトを指すオブジェクト式です。 |
index | オブジェクトに含まれる項目を示す番号を指定します。 |
number | 引数 index で指定される項目と関連付ける個別の番号を指定します。 |
解説
ItemData プロパティは、長整数型 (Long) の値を構成要素とする配列で、コントロールの List プロパティと同じ数の項目を含みます。これらの番号は、リスト内の各項目を指定するために使用できます。たとえば、雇用者名を並べたリスト ボックス コントロールの各雇用者に ID 番号を割り振ることができます。リスト ボックスを作成するときに、ItemData プロパティの配列の対応する項目にも番号を割り振ります。
通常、ItemData プロパティはリスト ボックス コントロール内の項目であるデータの配列にインデックス番号を割り振るために使います。
メモ AddItem メソッドを使ってリストに項目を追加したときは、項目は自動的に ItemData プロパティの配列にも追加されます。ただし、その値は初期化された値が割り当てられるのではなく、リスト内の追加された場所の項目に割り当てられていた ItemData プロパティと同じ値になります。ItemData プロパティを使うときは、新しくリストに追加する項目に割り当てる値を必ず代入するようにしてください。
オブジェクトの選択時にそのオブジェクトの IME (Input Method Editor) の状態を決定する値を設定します。値の取得も可能です。
メモ このプロパティは、日本、中国など、東アジア地域バージョンの Visual Basic にのみ適用されます。
object.IMEMode [= value]
IMEMode プロパティの構文の指定項目は次のとおりです。
指定項目 | 内容 |
object | 「対象」一覧内のいずれかのオブジェクトを指すオブジェクト式です。 |
value | オブジェクトが使用する IME モードを指定する整数を指定します。 |
設定値
value の設定値は次のとおりです。
設定値 | 内容 |
0 | なし (既定値)。この値は、IME に対するコントロールがないことを意味します。IMEMode プロパティを 0 に設定すると、IMEStatus 関数を使用して、IME の現在のステータスを判定できます。 |
1 | IME がオンです。この値は、IME がオンであることを示し、中国語または日本語に固有の文字が入力可能であることを意味します。この設定値は、日本語、簡体字中国語、および繁体字中国語の IME に限り有効です。 |
2 | IME がオフです。この値は、IME がオフであることを示し、オブジェクトの動作が英語入力モードと同じであることを意味します。この設定値は、日本語、簡体字中国語、および繁体字中国語の IME に限り有効です。 |
3 | IME が無効です。このモードは、上の設定値 2 のモードと類似していますが、3 のモードでは IME が無効になります。この設定値では、ユーザーはキーボードから IME をオンにすることができず、IME フローティング ウィンドウは非表示になります。この設定値は、日本語の IME に限り有効です。 |
4 | ひらがなの DBC (double-byte character) です。この設定値は、日本語の IME に限り有効です。 |
5 | カタカナの DBC です。この設定値は、日本語の IME に限り有効です。 |
6 | カタカナの SBC (single-byte character) です。この設定値は、日本語の IME に限り有効です。 |
7 | 英数字の DBC です。この設定値は、日本語の IME に限り有効です。 |
8 | 英数字の SBC です。この設定値は、日本語の IME に限り有効です。 |
9 | ハングル文字の DBC です。この設定値は、韓国語の IME に限り有効です。 |
10 | ハングル文字の SBC です。この設定値は、韓国語の IME に限り有効です。 |
解説
デザイン時に、[プロパティ] ウィンドウを使用して、オブジェクトの IMEMode プロパティを設定できます。また、実行時に、コードを使用して IMEMode プロパティを設定できます。値の取得も可能です。オブジェクトにフォーカスが配置されている間に IMEMode プロパティの設定値を変更すると、それに従ってオブジェクトの IME ステータスも変化します。IMEMode プロパティを 0 (None) に設定すると、オブジェクトのカレントの IME ステータスに関係なく、常に 0 が返されます。このプロパティを 0 以外の有効な値に設定すると、IMEMode プロパティはカレントの IME ステータスを返します。
日本語の IME では、0 から 8 までの設定値を使用できます。9 と 10 の設定値は日本語のシステムでは無効です。
韓国語の IME では、0 および 7 から 10 までの設定値を使用できます。1 から 6 までの設定値は韓国語のシステムでは無効です。
簡体字中国語と繁体字中国語の IME では、0 から 2 までの設定値を使用できます。3 から 10 までの設定値は中国語のシステムでは無効です。
コントロールの設定変更が可能かどうかを設定します。値の取得も可能です。
構文
object.Locked [ = boolean]
Locked プロパティの構文の指定項目は次のとおりです。
指定項目 | 内容 |
object | 「対象」一覧内のいずれかのオブジェクトを指すオブジェクト式です。 |
boolean | コントロールの設定変更が可能かどうかをブール式で指定します。設定する値については、次の「設定値」を参照してください。 |
設定値
boolean の設定値は次のとおりです。
設定値 | 内容 |
True | テキスト ボックス (TextBox) コントロールの場合、コントロール内のテキストのスクロールと強調表示は可能ですが、変更はできません。コードを使用すると、Text プロパティを変更してテキストを修正できます。 |
Column オブジェクトの場合、列の値は変更できません。 | |
ComboBox オブジェクトの場合、テキスト ボックスに入力したり、リストを開くことはできません。 | |
False | テキスト ボックス コントロールの場合、コントロール内のテキストを変更できます。 |
Column オブジェクトの場合、列の値の変更が可能です。 | |
ComboBox オブジェクトの場合、テキスト ボックスに入力したり、リストを開くことができます。 |
解説
Column オブジェクトの場合、基のフィールドの DataUpdatable プロパティの値が、Locked プロパティの既定値になります。ただし、Column オブジェクトが連結されていないか、またはデータ ソースで DataUpdatable プロパティがサポートされていない場合は、既定値は真 (True) になります。基のフィールドの DataUpdatable プロパティが偽 (False) の場合、このプロパティを真 (True) に設定しても、エラーは発生しません。しかし、コントロールが変更されたデータをデータベースに書き込もうとすると、エラーが発生します。
コンボ ボックス (ComboBox) コントロールの場合、Locked プロパティの値が真 (True) のときは、ユーザーがデータを変更することはできませんが、テキスト ボックスのデータを強調表示してコピーすることができます。このプロパティの設定は、プログラムによるコンボ ボックスへのアクセスには影響を与えません。
テキスト ボックス (TextBox) コントロールに入力する文字数を制限するかどうかを示す値を設定します。値の取得も可能です。入力可能な文字数を制限する場合は、その最大値を指定します。
構文
object.MaxLength [= value]
MaxLength プロパティの構文の指定項目は次のとおりです。
指定項目 | 内容 |
object | 「対象」一覧内のいずれかのオブジェクトを指すオブジェクト式です。 |
value | テキスト ボックス コントロールにユーザーが入力できる文字数の最大値を整数で指定します。MaxLength プロパティの既定値は 0 です。この場合、1 行のテキスト ボックスはシステムのメモリが許す限りの長さの文字列を受け取り、複数行のテキスト ボックスは最大約 32KB の文字列を受け取ることができます。0 よりも大きい値を設定すると、その値が最大バイト数を示します。 |
解説
MaxLength プロパティは、ユーザーがテキスト ボックス コントロールに入力できる最大文字数を設定するときに使います。
MaxLength プロパティの設定よりも長いテキストをテキスト ボックス コントロールに割り当てようとすると、エラーは発生しませんが、最大バイト数を超える部分は Text プロパティに格納されません。このプロパティの値を変更しても現在のテキスト ボックスの内容には影響しませんが、以降のテキスト ボックスへの変更に影響を与えます。
コンボ ボックス (ComboBox) コントロールまたはリスト ボックス (ListBox) コントロールのリスト部分の項目を、自動的に特定の照合順序に従って並べ替えるかどうかを示す値を設定します。値の取得も可能です。
構文
object.Sorted
object は、「対象」一覧内のいずれかのオブジェクトを指すオブジェクト式です。
設定値
Sorted プロパティの設定値は次のとおりです。
設定値 | 内容 |
True | リストの項目は特定の照合順序に従って並べ替えられます。 |
False | (既定値) リストの項目は特定の照合順序に従って並べ替えられません。 |
解説
Sorted プロパティを真 (True) に設定すると、必要な文字列操作が実行されて特定の照合順序に並べ替えが行われます。リスト項目の追加や削除に伴うインデックスの変更も併せて行われます。
メモ AddItem メソッドを使うと、リスト内の特定の位置に項目が追加されて並べ替えられた順番が変更され、その後に追加された項目が正しく並べ替えられない場合があります。