L
lig
Unregistered / Unconfirmed
GUEST, unregistred user!
我自己也觉得这个题比较怪,但是没有办法,实际应用中遇到的。情况是这样的。<br>我需要为FOXMAIL做一个类似于插件的东西,其中有一步就是读取FOXMAIL写邮件<br>窗口的邮件正文内容(即那个编辑控件中的文本)。原本以为很简单就可以办到<br>,但是后来一试,却发现并不像我所想象的那样简单,这个编辑组件中的文本就<br>是读不出来。我不知道怎么做,请大家帮帮忙。以下代码就是不能成功读取编辑<br>器中文本内容的代码。<br><br>//EditText:array[0..255] of char;<br><br>function TForm1.FindFoxMailWindow: THandle;<br>var<br> FoxMailWindowHandle:THandle;<br>begin<br> FoxMailWindowHandle:=FindWindow('TF_compose',nil);//TF_compost为邮件编辑窗口的类名。<br> if FoxMailWindowHandle<>0 then<br> EnumChildWindows(FoxMailWindowHandle,@EnumChildWindowsProc,0);<br> Result:=FoxMailWindowHandle;<br>end;<br><br>function EnumChildWindowsProc(H:HWnd;lparam:longint):Boolean;stdcall;<br>var<br> Buffer: array[0..255] of Char;<br>begin<br> Result:=True;<br> GetClassName(h,buffer,255);<br> if (trim(StrPas(Buffer))='TZEditor') then//TZEditor即为那个编辑控件的类名。<br> begin<br> SendMessage(h,WM_GETTEXT,255,LongInt(@EditText));<br> Form1.RichEdit1.Lines.Add(EditText);<br> Result:=false;<br> end;<br>end;