<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
Windows 中的分隔条是一种被广泛使用的控件,绝大多数 Explorer 式样的应用程序都使用了这种控件。然而却很少有相关的资料对它的完整实现进行介绍,于是我自己实现了一个,希望对 SDK 的爱好者们有所帮助。
事实上,分隔条也是一个很普通的窗口,它也拥有自己的窗口类、自己的窗口过程 —— 就像所有的预定义控件一样。也就是说,要创建一个分隔条,也需要进行窗口类的注册和窗口的创建。
下面是注册窗口类的代码
void RegisterSplitter(void)
{
WNDCLASS wc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hbrBackground = (HBRUSH)COLOR_BTNSHADOW;
wc.hCursor = LoadCursor(NULL, IDC_SIZEWE);
wc.hIcon = NULL;
wc.hInstance = hInst;
wc.lpfnWndProc = (WNDPROC)ProcSplitter;//这是窗口过程,对于MFC的CWnd类来说,这个过程是?
wc.lpszClassName = "MySplitter haha";
wc.lpszMenuName = NULL;
wc.style = 0;
RegisterClass(&wc);
}
20051028