【发布时间】:2012-04-26 13:23:47
【问题描述】:
大家,
你能告诉我有没有办法在win32 api中创建新的gui控件(例如手风琴栏等)。如果您知道,请告诉我书籍或阅读链接。
谢谢。
【问题讨论】:
-
AFAIK,每个“窗口”都是一个可绘制对象,您可以使用 GDI 在那里绘制任何您想要的东西。
大家,
你能告诉我有没有办法在win32 api中创建新的gui控件(例如手风琴栏等)。如果您知道,请告诉我书籍或阅读链接。
谢谢。
【问题讨论】:
您可以通过注册自己的窗口类并为处理绘图、用户交互和组成控件(如果有)的类提供自定义WindowProc 来创建自己的“控件”。如果您想将它们提供给不同的项目,您可以将它们添加到一个带有 Init 函数的 DLL 中,应用程序在创建您自己的类的窗口之前调用该函数。
MSDN 将是开始了解的最佳地点。
根据预期用途,也有使用 ATL、MFC、.NET、QT 或其他框架的选项,但大多数只是上述方法的简单包装。
【讨论】:
WindowProc 作为默认值提供(参见WNDCLASS.lpfnWndProc)