我想用maskedit实现ip的效果:192.168.111.10
请问还有没有其他的办法?

解决方案 »

  1.   

    uses
      CommCtrl, ComCtrls;
    来动态产生一个
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      InitCommonControl(ICC_INTERNET_CLASSES);
      CreateWindow(WC_IPADDRESS,nil,WS_CHILD or WS_VISIBLE,20,20,130,23, Handle,0,
                   hInstance,nil);
    end;
      

  2.   

    算了帮人帮到底
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, ImgList, CommCtrl, ComCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        TreeView1: TTreeView;
        ImageList1: TImageList;
        Button2: TButton;
        Edit1: TEdit;
        procedure Button1Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        hIPAddress: THandle;
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
    begin
      InitCommonControl(ICC_INTERNET_CLASSES);
      hIPAddress := CreateWindow(WC_IPADDRESS,nil,WS_CHILD or WS_VISIBLE,20,20,130,23, Handle,0,
                   hInstance,nil);
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      IPAddress: array[0..15] of Char;
    begin
      GetWindowText(hIPAddress, IPAddress, 15);
      Edit1.Text := IPAddress;
    end;
    end.
      

  3.   

    哈,我的方法更笨,4个edit,在onkeypress中限制输入0-255,中间用标签写的"."
      

  4.   

    楼上的,和我的想法一样
    不一定在一个edit中实现嘛你把外观变变,变得和windows的差不多不就ok了吗?哈哈