我有各种层次结构,并希望允许导航,然后使用像下面的资源管理器地址栏中找到的Microsoft编辑器.有这样的Delphi组件吗?(付费还是免费)?

我正在学习并且对此有所了解.我搜索了很长时间,找不到任何答案.
每次我在Edit控件中输入文本时,它总是变为小写,即使使用Shift或CapsLock.我没有在其上放置任何小写/大写样式:
hEditSub = CreateWindow("EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER | EM_SETHANDLE, 10, 334, 270, 20, hwnd_MainSub, NULL, hInstance_Main, NULL);
Run Code Online (Sandbox Code Playgroud)
有没有办法让它混合大小写(允许大小写)?或者是否需要继承子类?
我创建了一个编辑框,它工作得很好,但在我为其添加自定义 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);
Run Code Online (Sandbox Code Playgroud)
直到这里它工作得很好在
我设置此窗口过程之后,编辑控件不再按预期工作
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;
}
Run Code Online (Sandbox Code Playgroud)
我是否必须手动处理某些事件或更改我的构造风格标志?
edit-control ×3
c++ ×2
winapi ×2
delphi ×1
editbox ×1
explorer ×1
mixed-case ×1
path ×1
subclassing ×1