Winapi 使用win32 API创建新的gui组件

Winapi 使用win32 API创建新的gui组件,winapi,win32gui,Winapi,Win32gui,各位, 你能告诉我有没有办法在win32 api中创建新的gui控件(例如手风琴条等)。如果您知道,请告诉我阅读的书籍或链接。 谢谢 您可以通过注册自己的窗口类来创建自己的“控件”,并为该类提供一个自定义的WindowProc,该类处理图形、用户交互和组成控件(如果有)。如果您想使这些应用程序可用于不同的项目,可以在创建自己类的窗口之前,使用应用程序调用的Init函数将它们添加到DLL中 这是开始理解的最好地方 根据预期用途,也有使用ATL、MFC、.NET、QT或其他框架的选项,但大多数只是上

各位,
你能告诉我有没有办法在win32 api中创建新的gui控件(例如手风琴条等)。如果您知道,请告诉我阅读的书籍或链接。
谢谢

您可以通过注册自己的窗口类来创建自己的“控件”,并为该类提供一个自定义的
WindowProc
,该类处理图形、用户交互和组成控件(如果有)。如果您想使这些应用程序可用于不同的项目,可以在创建自己类的窗口之前,使用应用程序调用的
Init
函数将它们添加到DLL中

这是开始理解的最好地方

根据预期用途,也有使用ATL、MFC、.NET、QT或其他框架的选项,但大多数只是上述方法的包装。

您可以通过注册自己的窗口类创建自己的“控件”,并为处理图形的类提供自定义的
WindowProc
,以及用户交互和组成控件(如果有)。如果您想使这些应用程序可用于不同的项目,可以在创建自己类的窗口之前,使用应用程序调用的
Init
函数将它们添加到DLL中

这是开始理解的最好地方


根据预期用途,也有使用ATL、MFC、.NET、QT或其他框架的选项,但大多数都只是上述方法的包装。

AFAIK,每个“窗口”都是可绘制对象,您可以使用GDI在其中绘制任何您想要的内容。AFAIK,每个“窗口”是一个可绘制的对象,您可以使用GDI在那里绘制任何您想要的东西。@MikeKwan:是的,作为默认值提供的
WindowProc
(请参见
WNDCLASS.lpfnWndProc
)我刚才在质疑您对“默认值”一词的选择。当然,默认的WndProc意味着完全不同的东西。对不起:)我第一次写答案时忘记了确切的结构,所以用了一种半模糊的方式写了出来,允许我以任何一种方式来描述它:p@MikeKwan:是,默认提供的
WindowProc
(请参阅
WNDCLASS.lpfnWndProc
)我只是在质疑你对“违约”一词的选择。当然,默认的WndProc意味着完全不同的东西。对不起:)我第一次写答案时忘记了确切的结构,所以用了一种半含糊的方式写了它,允许我用任何一种方式来描述它:p