IP アドレスコントロールについて
インターネット プロトコル (IP) アドレス制御を使用すると、ユーザーは簡単に理解できる形式で IP アドレスを入力できます。 また、このコントロールを使用すると、アプリケーションはテキスト形式ではなく数値形式でアドレスを取得できます。
IP アドレスコントロールについて
Internet Explorer バージョン 4.0 Windows IP アドレス コントロールが導入されました。これは、ユーザーがインターネット プロトコル (IP) 形式で数値アドレスを入力できるようにする編集コントロールに似た新しいコントロールです。 この形式は、4 つの 3 桁のフィールドで構成されます。 各フィールドは個別に処理されます。フィールド番号は 0 から始まります。次の図に示すように、左から右に進みます。

このコントロールでは、各フィールドに数値テキストのみを入力できます。 特定のフィールドに 3 桁の数字が入力されると、キーボードフォーカスは自動的に次のフィールドに移動されます。 アプリケーションでフィールド全体を入力する必要がない場合、ユーザーは 3 桁未満の数字を入力できます。 たとえば、フィールドに数値 21 のみを含める必要がある場合は、「21」と入力してキーを押すと、ユーザーは次のフィールドに移動します。
各フィールドの既定の範囲は 0 から 255 ですが、アプリケーションでは、 IPM_SETRANGE メッセージを使用して、これらの制限の間の任意の値に範囲を設定できます。
注意
IP アドレス制御は、バージョン 4.71 以降のComctl32.dllで実装されています。
IP アドレス コントロールの作成
IP アドレス コントロールを作成する前に、INITCOMMONCONTROLSEX 構造体の dwICC メンバーに ICC_INTERNET_CLASSES フラグを設定して InitCommonControlsEx を呼び出します。
CreateWindow または CreateWindowEx 関数を使用して、IP アドレス コントロールを作成します。 コントロールのクラス名は、commctrl.h で定義されている WC_IPADDRESSです。 IP アドレスコントロール固有のスタイルは存在しません。ただし、これは子コントロールであるため、 WS_CHILD スタイルを最小限に抑えます。
IP アドレス コントロールは編集コントロールですか?
IP アドレス コントロールは編集コントロールではなく、EM_ メッセージに応答しません。 ただし、 WM_COMMAND メッセージを 介して、次の編集コントロール通知を所有者ウィンドウに送信します。 IP アドレス コントロールは、 WM_NOTIFY メッセージを 介してプライベート IPN_通知も送信されることに注意してください。
| Notification | 通知の理由 |
|---|---|
| EN_SETFOCUS | IP アドレス コントロールがキーボード フォーカスを取得したときに送信されます。 |
| EN_KILLFOCUS | IP アドレス コントロールがキーボード フォーカスを失ったときに送信されます。 |
| EN_CHANGE | IP アドレス コントロール内の任意のフィールドが変更されたときに送信されます。 標準の編集コントロールからの EN_CHANGE 通知と同様に、この通知は画面が更新された後に受信されます。 |