![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TEdit для ввода IP [D7]
GanibalLector © (2010-04-19 11:42:00)Когда-то видел пример того, как из TEdit сделать строку для ввода IP адреса. Реализация была без всяких масок. Если не ошибаюсь, то хэндлу TEdit что-то надо было послать.
Не могли бы напомнить сабж. Заранее низкий поклон.
GanibalLector (2010-04-19 23:05:00) [1]Спасибо!
Б (2010-04-19 15:14:00) [2]Где-то тут.
http://rouse.drkb.ru/network.php#tcpstat
Leonid Troyanovsky (2010-04-19 14:28:00) [3]
> GanibalLector © (19.04.10 11:42)
> Не могли бы напомнить сабж.
Не помню, чье:
uses
comctrls, commctrl;
type
TIPEdit = class(TWinControl)
protected
procedure CreateParams(var Params: TCreateParams); override;
procedure WMGetDlgCode( var Message:TWMGetDlgCode); message WM_GETDLGCODE;
end;
procedure TIPEdit.CreateParams(var Params: TCreateParams);
begin
InitCommonControl(ICC_INTERNET_CLASSES );
inherited CreateParams(Params);
CreateSubClass(Params, WC_IPADDRESS);
Params.Style := Params.Style or WS_TABSTOP;
end;
procedure TIpEdit.WMGetDlgCode;
begin
inherited;
Message.Result := Message.result or DLGC_WANTARROWS;
end;
var Edit1: TIPEdit;
procedure TForm1.FormCreate(Sender: TObject);
begin
if not Assigned(Edit1) then begin
Edit1 := TIPEdit.Create(Self);
with Edit1 do
begin
Name := 'Edit1';
Parent := Self;
Left := 24;
Top := 16;
Width := 121;
Height := 21;
Tabstop := True;
end;
SendMessage(Edit1.Handle,IPM_CLEARADDRESS,0,0);
SendMessage(Edit1.Handle,IPM_SETADDRESS,0,MAKEIPADDRESS(127,0,0,1));
end;
end;
--
Regards, LVT.
DVM (2010-04-19 11:51:00) [4]
> Если не ошибаюсь, то хэндлу TEdit что-то надо было послать.
Ошибкаешься имхо. MS свой контрол для ввода IPv4 адреса сделала из 4 Edit - ов. По крайней мере еще недавно так было.