1 CString作为WPARAM进行传递 这种情况经常出现在自定义消息的发送语句中,将CString类型的变量作为WPARAM进行传递.直接将CString强制转化成WPARAM是不行的,正确的方法是这样的(将红色字体部分用你的消息和变量进行替换): SendMessage(WM_SELCHANGE, (WPARAM)lBoxSelText.GetBuffer(0), NULL); lBoxSelText.ReleaseBuffer()...
BSTR b = (BSTR)lParam; CString s(b); SysFreeString(b); AfxMessageBox(s);
WPARAM就是无符号整型 CString str;WPARAM qq;str.Format("%d", qq);
比如,要传递字符串,则在子窗体中写:CString str= "自定义字符串";::PostMessage((HWND)(GetMainWnd()->GetSafeHwnd()),WM_MYMSG,NULL,(LPARAM)&str);在主窗体中响应:BEGIN_MESSAGE_MAP()ON_MESSAGE(WM_MYMSG, onMyMsg)END_MESSAGE_MAP()然后再onMyMsg响应就可以了。
CStringm_strIdleStatusText; boolm_bForceStatusText; CCriticalSectionm_csStatus; // Operations public: voidLogMsg(EVENTTYPEeType,LPCTSTRlpszBuffer); voidUpdateItemCount(intnDelta); voidSetStatusBarText(LPCTSTRlpszText); // Overrides // ClassWizard generated virtual function overrides ...
you can pass a pointer to a local object, and since it is synchronous, the object outlives the message handler, assuming the handler doesn't retain a copy of the pointer. However, with PostMessage, you will usually have to use new/delete, e.g. to pass a CString in PostMessage (I ...
GetClientRect( &rect ); // Returns a CString CRect rect; pDC->SetTextAlign( TA_BASELINE | TA_CENTER ); pDC->TextOut( rect.right / 2, rect.bottom / 2, s, s.GetLength() ); } 最后:现在大家明白这哥俩之间的关系了吧。因此我们一般用OnPaint维护窗口的客户区(例如我们的窗口客户区加一个背...
Convert from CString to std::string in UNICODE builds Convert from std::string to CString in UNICODE builds convert from std::string to LPWSTR Convert HRESULT hex error code to string Convert std::wstring to UCHAR* Convert TCHAR [] to LPCWSTR Convert wstring to HEX and vice versa Convert...
更改定义: afx_msgvoidOnRecvData(WPARAM wParam, LPARAM lParam); 为 afx_msgLRESULTOnRecvData(WPARAM wParam, LPARAM lParam); 编译通过 LRESULT是一个数据类型, MSDN: 32-bit value returned from a window procedure or callback function 指的是从窗口程序或者回调函数返回的32位值。
出现这个问题一般都是从VC6.0 工程升迁到vs中出现的 afx_msg void OnSocket(WPARAM wParam,LPARAM lParam); 解决方法为 afx_msg LPRESULT OnSocket(WPARAM wParam,LPARAM lParam); 在对应的函数实现中也将void改为LPRESULT