我创建了一个编辑框,它工作得很好,但是在我为其添加了一个自定义 WndProc 之后,文本“我的编辑”不可见,并且在单击时不会获得焦点。
HWND handle=CreateWindowExW(0,L"Edit",L"my edit",WS_CHILD | WS_VISIBLE | WS_VSCROLL | ES_CENTER | ES_MULTILINE | ES_AUTOVSCROLL,
0,0,200,200,window.handle,0,GetModuleHandle(NULL),0);
直到这里它工作得很好在
我设置了这个窗口过程之后,编辑控件不再像预期的那样工作
SetWindowLongPtr(handle,GWLP_WNDPROC,(LRESULT)staticWndProc);
LRESULT CALLBACK staticWndProc(HWND handle, UINT uMsg, WPARAM wParam, LPARAM lParam){
switch (uMsg){
case WM_LBUTTONDOWN:
std::wcout << handle << L" click\n"; //click event works
break;
default:
return DefWindowProcW(handle,uMsg,wParam,lParam);
}
return 0;
}
我是否必须手动处理某些事件或更改我的构造样式标志?