找到了一个窗口,如何对窗口中的控件进行操作
找到了一个窗口,怎么对窗口中的控件进行操作?
我用FIND WINDOW找到了一个窗口,现在我要对窗口中一些控件进行操作,比如修改EDIT的TEXT,MEMO的TEXT,我怎么找到这些控件并进行控制?
------解决方案--------------------
我用FIND WINDOW找到了一个窗口,现在我要对窗口中一些控件进行操作,比如修改EDIT的TEXT,MEMO的TEXT,我怎么找到这些控件并进行控制?
------解决方案--------------------
- C/C++ code
void __fastcall TForm1::Button3Click(TObject *Sender) { HWND Formh = FindWindow(NULL,"测试窗口"); if(Formh) { HWND Edith = FindWindowEx(Formh,NULL,"TEdit",NULL); if(Edith) { int length = SendMessage(Edith, WM_GETTEXTLENGTH, 0, 0); // ShowMessage(length); char *Temp = new char[length]; //GetWindowText(Memoh,Temp,length); SendMessage(Edith, WM_GETTEXT, length,(long)Temp ); Memo1->Lines->Add(String(Temp)); delete Temp; char TT[] = "测试文字"; SendMessage(Edith, WM_SETTEXT, strlen(TT),(long)TT ); } } }
------解决方案--------------------
如果只是Edit类的窗口,找到该窗口句柄以后,用API:SetWindowText或者发消息WM_SETTEXT就可以更改其窗口文本。
至于其他类型的窗口,就要考虑另外的方法了。