关于windows消息知识的疑问,谢谢
1、获得指定窗体的句柄
HWND hLoginWnd = ::FindWindow("TfrmLogin", "登录窗体");
(1)TfrmLogin:在bcb窗体设计中,就是name属性值(即类名),对吗?
(2)当要查找的窗体(可执行的exe程序),若不能看到源码,那如何得知该窗体的类名?
(3)FindWindow(窗口类名,窗口名)方法,对于c#,VB等程序适用吗?
2、查找子窗口
FindWindowEx(hLoginWnd, NULL, "TLabeledEdit", NULL)
(1)如何确定被查找窗体中控件(可否理解为子窗体?)的类型?即如何得知一个文本框就是TLabeledEdit类型?通过工具?
3、发送消息
::SendMessage(h1, WM_SETTEXT, 0, (LPARAM)edtUserPwd->Text.c_str());
(1)这句代码这样理解是否正确:edtUserPwd中的值赋给句柄h1所在的控件?
(2)查msdn,WM_SETTEXT的解释为:Sets the text of a window.翻译为:设置窗体的文本框?
(3)SendMessage参数中的 WPARAM wParam,LPARAM IParam(查msdn:指定附加的消息指定信息),两者有什么区别?
4、消息框
MessageBox(Handle, "错误!",__FUNC__, MB_OK | MB_ICONWARNING);
中的“__FUNC__”代表什么意思?
请多多指教,谢谢。