Das IP-Eingabefeld ist Ihnen bestimmt aus einigen Dialogen des Betriebssystems bekannt. Am besten lässt es sich noch mit einem normalen Eingabefeld vergleichen. Es ist nur in vier Felder aufgeteilt, die die gezielte Bearbeitung einer IP-Adresse ermöglichen:

Wie jedes "Common Control" muss auch dieses Eingabefeld initialisiert werden. Allerdings benutzen wir hier die Funktion "InitCommonControlsEx", weil wir eine spezielle Klasse angeben müssen:
var
icc : TInitCommonControlsEx = (
dwSize : sizeof(TInitCommonControlsEx);
dwICC : ICC_INTERNET_CLASSES;
);
begin
InitCommonControlsEx(icc);
{ ... }
end.
Danach kann das IP-Eingabefeld wie jedes normale Fenster erzeugt werden. Zu beachten ist die Konstante WC_IPADDRESS, die man anstelle des eigentlichen Klassennamens SysIPAddress32 verwenden kann:
hIpAddr := CreateWindowEx(WS_EX_CLIENTEDGE,WC_IPADDRESS,nil, WS_VISIBLE or WS_CHILD,10,20,120,21,wnd,IDC_IPCTRL, hInstance,nil);