コントロールの編集 (Windows インストーラー)

Edit コントロールは、文字列または整数値のプロパティに関連付けられた編集フィールドです。 Control テーブルの Property 列にプロパティの名前入力します。

コントロール属性

このコントロールでは、次の属性を使用できます。 イベントを使用して属性の値を変更するには、EventMapping テーブルの ControlEvent コントロールをサブスクライブし、[属性] 列に属性の識別子を一覧表示します。 [イベント] 列に ControlEvent の識別子を入力します。

属性識別子 16 進数ビット 形容
IndirectPropertyName これは、コントロールに関連付けられている間接プロパティの名前です。 間接属性ビットが設定されている場合、コントロールは、この名前を持つプロパティの値を表示または変更します。 間接属性ビットが設定されている場合、この名前は、Control テーブルの [プロパティ] 列に表示されるプロパティの値。
位置 ダイアログ ボックス内のコントロールの位置。 コントロールの左隅のコントロールの幅、高さ、および座標を、Control テーブルの [幅]、[高さ]、[X]、および [Y] 列に入力。 長さと距離 インストーラー ユニットを使用します。
PropertyName これは、このコントロールに関連付けられているプロパティの名前です。 Indirect 属性ビットが設定されていない場合、コントロールは、この名前を持つプロパティの値を表示または変更します。 この属性は、コントロール テーブルの [プロパティ] 列で指定します。
PropertyValue このコントロールによって表示または変更されたプロパティの現在の値。 間接属性ビットが設定されていない場合、これは PropertyName の値です。 Indirect 属性ビットが設定されている場合、これは IndirectPropertyName の値です。 属性が変更されると、コントロールには新しい値が反映されます。
テキスト テキスト文字列のフォントとフォント スタイルを設定するには、表示される文字の文字列の先頭に {\style} または {&style} を付けます。 ここで、style は、TextStyle テーブルの TextStyle 列に一覧表示される識別子です。 どちらも存在しないが、DefaultUIFont プロパティが有効なテキスト スタイルとして定義されている場合は、そのフォントが使用されます。 ユーザーが入力できる文字数を指定するには、フォント指定の後に {n} を追加します。 ここで、n は正の整数です。
表示 0x00000000 0x00000001
非表示のコントロール。 表示コントロール。
コントロールを作成時に表示または非表示にするには、コントロール テーブルの の [属性] 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使用して、コントロールを非表示または表示することもできます。
Enabled 0x00000000 0x00000002
無効な状態のコントロール。 有効な状態での制御。
作成時にコントロールを有効にするには、コントロール の [属性] 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使用して、コントロールを有効または無効にすることもできます。
沈没 0x00000000 0x00000004
既定の表示スタイルを表示します。 コントロールを 3-D の見た目で表示します。
これらのビットは、コントロール テーブルの [属性] 列のビット ワード含めます。
間接 の 0x00000000 0x00000008
コントロールは、コントロール テーブルの Property 列にプロパティの値を表示または変更します。 コントロールは、コントロール テーブルの [プロパティ] 列に識別子が表示されているプロパティの値を表示または変更します。
このコントロールに関連付けられているプロパティが間接的に参照されているかどうかを判断します。
整数 の 0x00000000 0x00000010
コントロールに関連付けられているプロパティは文字列値です。 コントロールに関連付けられているプロパティは整数値です。
コントロールの作成時にこの属性を設定するには、コントロール テーブルの の Attributes 列のビット ワードにこのビットを含めます。
RTLRO を する 0x00000000 0x00000020
コントロール内のテキストは、左から右の読み取り順序で表示されます。 コントロール内のテキストは、右から左の読み取り順序で表示されます。
RightAligned を する 0x00000000 0x00000040
コントロール内のテキストは左に配置されます。 コントロール内のテキストが右側に配置されます。
LeftScroll を する 0x00000000 0x00000080
スクロール バーはコントロールの右側にあります。 スクロール バーはコントロールの左側にあります。
BiDi 0x000000E0 この値は、RTLRO、rightAligned 、および LeftScroll 属性の組み合わせ 設定します。
複数行 の 0x00010000 垂直スクロール バーを使用して複数行の編集コントロールを作成します。 [コントロール] の [属性] 列のビット ワードに 65536 を含め、垂直スクロール バーを含む複数行編集コントロールを作成します。
パスワードの 0x00200000 パスワードを入力するための編集コントロールを作成します。 コントロール テーブル の [属性] 列の値に2097152を追加して、コントロールに入力された各文字をアスタリスク (*) として表示する編集コントロールを作成します。 Password 属性を設定すると、インストーラーは Edit コントロールに関連付けられているプロパティをログ ファイルに書き込むのを防ぎます。 詳細については、「機密情報がログ ファイル に書き込まれないようにする」を参照してください。

備考

このコントロールは、CreateWindowEx 関数を使用して EDIT クラスから作成できます。 これには、WS_BORDER、WS_CHILD、WS_TABSTOP、および WS_GROUP スタイルがあります。

入力できるテキストの長さを制限するには、コントロール テーブルの [テキスト] フィールドの先頭に 0 ~ 2147483646の数値を中かっこで囲みます。 たとえば、テキスト フィールドが {80}で始まる場合、文字列の長さは 80 文字に制限されます。 テーブルにそのような制限が指定されていない場合、または 0 を指定した場合、長さは可能な最大 (2147483646文字) に設定されます。 負の値または数値以外の値を指定すると、エラーが発生します。

スクリーン リーダーとの互換性を保つには、エディット コントロールを最初のアクティブ コントロールとしてダイアログ ボックスを作成する場合は、編集フィールドに属するテキスト フィールドを Dialog テーブルの最初のアクティブ なコントロールにする必要があります。 静的テキストはフォーカスを取ることができないため、ダイアログ ボックスが作成されると、編集フィールドは最初は意図したとおりにフォーカスを持ちますが、これによりスクリーン リーダーに正しい情報が表示されるようになります。

エディット コントロールに関連付けられているプロパティは、コントロールがフォーカスを失った場合にのみ設定されます。 そのため、コントロールからタブを移動するか、プロパティを更新する別のコントロールを選択する必要があります。