Win 32 API,使用垂直拆分条绘制两个子窗口

Win 32 API, drawing two child windows with vertical splitter bar

本文关键字:两个 窗口 绘制 API 拆分 垂直 Win      更新时间:2023-10-16

下面是我用来创建子窗口的代码:

案例WM_CREATE: hInst = ((LPCREATESTRUCT) lParam) -> hInstance;

hWnd1 = CreateWindowEx( WS_EX_CLIENTEDGE | WS_EX_LEFT,
            "edit", NULL,  
            WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | ES_MULTILINE | WS_VSCROLL, 
            0, 0, 0, 0, 
            hWnd, (HMENU) 1,
            hInst, NULL );
hWnd2 = CreateWindowEx( WS_EX_CLIENTEDGE | WS_EX_LEFT,
            "edit", NULL,  
            WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | ES_MULTILINE | WS_VSCROLL, 
            0, 0, 0, 0, 
            hWnd, (HMENU) 2,
            hInst, NULL );

但是这段代码会产生水平拆分器,我想要垂直拆分器。
首先我想,如果我更改高度和宽度参数,我可以创建垂直拆分器。但这毫无用处。

有关完整代码和示例示例(为了节省 SO 上的空间):http://old.sumitbirla.com/software/src/splitter.c

那么,究竟什么是关键字/参数,这将产生垂直拆分器条。

您发布的代码只创建两个子窗口。它与垂直或水平分离器无关。处理父窗口中的WM_SIZE消息,以定位子窗口并调整其大小以进行垂直或水平拆分。