使用纯 WinAPI 对子项进行自定义"container"控件

Custom "container" control with children using pure WinApi

本文关键字:自定义 container 控件 WinAPI      更新时间:2023-10-16

我想在一个窗口(名为HWND-hwd)中创建一个控件(名为"HWND容器"),该窗口将容纳其他控件,如按钮(名为工作流按钮)和图像(名为流位图),避免使用"静态"标准类。它将包含一些自定义绘制的控件,这些控件的消息将在主WndProc中处理(我不想添加另一个WndProc),同时我希望只能调用一次函数ShowWindow(container, SW_HIDE)来隐藏控件容器及其包含的所有控件。这在普通的WinApi中可能吗(所以没有MFC或其他任何东西)?我应该使用什么样的控制?

谢谢,LB

我建议创建一个样式为BS_GROUPBOX"button"窗口。

hButton = CreateWindow( "button", "group", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 0, 0, 0, 0, hWnd, NULL, hInstance, NULL );

BS_GROUPBOX创建一个矩形,在该矩形中可以对其他控件进行分组。子控件通过在其周围绘制边框进行分组。窗口文本显示在左上角。