1
private:
    #define WM_SETTEXT                      0x000C

    void doSomethinggToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) 
    {
         SendMessage(this->Handle, WM_SETTEXT, (wPARAM)"Some Window Title", 0);
    }

导致以下错误:

error C2065: 'wPARAM' : undeclared identifier
error C2143: syntax error : missing ')' before 'string'
error C2059: syntax error : ')'

this->Handle <--- (错误)没有从 System::IntPtr 到 HWND 的合适转换

4

1 回答 1

1

您需要的符号是WPARAM(全部大写),而不是“wPARAM”。

另请注意,WM_SETTEXT实际上将字符串参数作为lParam值,而不是wParam

SendMessage(this->Handle, WM_SETTEXT, 0, (LPARAM)"Some Window Title");
于 2013-03-27T05:58:49.420 回答