[win32API] 如何使用资源编辑器直接在主窗口上画控件。

[win32API] 如何使用资源编辑器直接在主窗口上画控件。

(以下教程适用于vs2010旗舰版)

 

实际上这是不可能的,因为资源编辑器编辑的窗口只能是对话框,主窗口是不能编辑的,但我们可以使用对话框来代替主窗口,从而假装实现对主窗口的编辑。有两种方法。

 

  1. 直接创建一个对话框,不要主窗口
  1. 创建一个空项目。

  1. 右键源文件,点击添加,点击新建项。

 

 

 

  1. 新建一个c文件(cpp也行)

  1. 新建一个rc(资源)文件,同时程序会自动创建一个resource.h文件。

  1. 添加资源

  1. 新建一个对话框资源

  1. 点击刚才新建的对话框,更改对话框的ID为IDD_MAIN。

  1. 在main.c文件中写下如下代码

#include <windows.h>

#include "resource.h"

 

int CALLBACK WinProc(HWND,UINT,WPARAM,LPARAM);

 

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)

{

    DialogBox(hInstance,MAKEINTRESOURCE(IDD_MAIN),NULL,WinProc);

    return 0;

}

 

int CALLBACK WinProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)

{

    int iReturn=TRUE;

    

    switch(message)

    {

        case WM_INITDIALOG:

            break;

        default:

            iReturn=FALSE;            

        return DefWindowProc(hWnd,message,wParam,lParam);

    }

 

    return iReturn;

}

 

  1. 使用没有边框的对话框代替主窗口的客户区。
  1. 不想写了,回来再写。
posted @ 2019-11-21 15:00  jawide  阅读(706)  评论(0编辑  收藏  举报