S sy0116 Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-14 #1 假设某个窗体上的一个label的内容是asdfghjkl怎样才能让我的程序上的label1的内容和他一样,我已经知道了这个label的句柄
桦 桦树皮 Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-14 #7 有个实例是获取edit的text 文本的。不知道能不能用来获取label的caption 新建一Form,放置Label、Edit、Button各一个到Form中,将Edit1的PasswordChar属性改为“*”,双击Button1: procedure TForm1.Button1Click(Sender: TObject); var NameChar; // 名字 L:integer; // 名字的长度 begin L:=GetWindowTextLength(Edit1.handle)+1; // 得到名字长度,并将长度加1 GetMem(Name,L);//为将要得到的名字分配内存 GetWindowText(Edit1.handle,Name,L);//得到名字 label1.Caption:=String(Name); // 将得到的名字显示于 Label1 FreeMem(Name,0); // 释放分配的内存 end; 经过运行,在Edit1中输入的密码就可通过Label1显示出来。
有个实例是获取edit的text 文本的。不知道能不能用来获取label的caption 新建一Form,放置Label、Edit、Button各一个到Form中,将Edit1的PasswordChar属性改为“*”,双击Button1: procedure TForm1.Button1Click(Sender: TObject); var NameChar; // 名字 L:integer; // 名字的长度 begin L:=GetWindowTextLength(Edit1.handle)+1; // 得到名字长度,并将长度加1 GetMem(Name,L);//为将要得到的名字分配内存 GetWindowText(Edit1.handle,Name,L);//得到名字 label1.Caption:=String(Name); // 将得到的名字显示于 Label1 FreeMem(Name,0); // 释放分配的内存 end; 经过运行,在Edit1中输入的密码就可通过Label1显示出来。
L leaber Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-14 #9 呵呵,知道句柄了这个就简单了! var buf:array [0..1023]of char; H:THandle;// begin FillChar(Buf,1024,0); H:=//你所知道的句柄 SendMessage(H,WM_GETTEXT,1024,Integer(@Buf[0])); ShowMessage(buf); end;
呵呵,知道句柄了这个就简单了! var buf:array [0..1023]of char; H:THandle;// begin FillChar(Buf,1024,0); H:=//你所知道的句柄 SendMessage(H,WM_GETTEXT,1024,Integer(@Buf[0])); ShowMessage(buf); end;
P pihome Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-14 #10 >> 我已经知道了这个label的句柄 首先要搞清楚,Delphi中的TLabel是没有Handle的,也就没办法获取它的Caption,VC中的Static或Delphi中的TStaticText才有Handle,才能获取Caption,方法用楼上 桦树皮 所说的就可以了
>> 我已经知道了这个label的句柄 首先要搞清楚,Delphi中的TLabel是没有Handle的,也就没办法获取它的Caption,VC中的Static或Delphi中的TStaticText才有Handle,才能获取Caption,方法用楼上 桦树皮 所说的就可以了
O oiwin Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-14 #11 H是那个LABEL的句柄 var buffer: PChar; L: integer; begin L := GetWindowTextLength(H); GetMem(buffer, L + 1); SendMessage(H, WM_GETTEXT, L, integer(buffer)); edit1.Text := string(buffer); FreeMem(buffer); end;
H是那个LABEL的句柄 var buffer: PChar; L: integer; begin L := GetWindowTextLength(H); GetMem(buffer, L + 1); SendMessage(H, WM_GETTEXT, L, integer(buffer)); edit1.Text := string(buffer); FreeMem(buffer); end;