C ++ win32 Api资源文件

时间:2015-03-16 18:55:47

标签: c++ api winapi

我正在学习win32 api。我知道如何动态添加按钮。现在我正在尝试使用资源文件(rse.rc)添加按钮。下面是我的res.rc文件定义:

IDB_B1 PUSHBUTTON "TOGGLE",7 , 20, 180, 200, 30

我已经生成了一个要包含在源代码中的resource.h文件。现在我面临的问题是如何将此按钮添加到我的主窗口?我尝试使用.rc文件添加光标和图标,这很容易,但无法理解这个按钮。

我想它必须在:

WM_CREATE:

但是如何从.rc文件中调用呢?

1 个答案:

答案 0 :(得分:2)

这种方法不起作用。

Win32中的资​​源用于创建许多东西:菜单,加速器和对话框等;但不是单一的控制。

您想要做什么,使用两种技术可以实现带按钮的主窗口:

  1. 让您的主窗口成为对话框。您可以使用按钮和所有内容编写完整对话框的资源,然后从WinMain()调用CreateDialog()DialogBox()或类似。
  2. 您的主窗口是普通窗口,您可以手动创建子控件。创建这些控件时直接调用CreateWindowEx(),类名为WC_BUTTON,作为您猜测的WM_CREATE的响应。
  3. 此外,您可以将对话框设为主窗口的子对象,但我不建议这样做,特别是如果您还在学习。