第一个mfc

#include <windows.h>
#include <stdio.h>
#include <cstring>
LRESULT CALLBACK  Winsunproc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
        );
//回调函数声明
// WinMian 函数  定义
int WINAPI WinMain(
    __in HINSTANCE hInstance, //获取当前应用实例的句柄
    __in_opt HINSTANCE hPrevInstance, //获取上一个应用实例句柄
    __in_opt LPSTR lpCmdLine,  //【 LP开头 指针】字符串指针 指向指定应用程序的命令行一个Null终止的字符串
    __in int nShowCmd ) //指定窗口如何将最初显示
{
    WNDCLASS windows;
    windows.cbClsExtra=0;
    windows.cbWndExtra=0;
    windows.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
    windows.hCursor=LoadCursor(NULL,IDI_ERROR);
    windows.hInstance=hInstance;
    windows.lpfnWndProc=Winsunproc;//回调窗口函数
    windows.lpszClassName= (WCHAR *)"操蛋的窗口名";
    windows.lpszMenuName=NULL;
    windows.style=CS_HREDRAW|CS_VREDRAW; //CS_HREDRAW当窗口水平方向的宽度变化时重绘整个窗口.CS_VREDRAW 当窗口垂直方向的宽度变化时重绘整个窗口.
    RegisterClass(&windows); //注册窗口
    //创建窗口
    HWND hwnd;
    hwnd=CreateWindow((WCHAR *)"操蛋的窗口",(WCHAR *)"第一个窗口",WS_OVERLAPPEDWINDOW,0,0,400,600,NULL,NULL,hInstance,NULL);
    ShowWindow(hwnd,SW_SHOWNORMAL);
    UpdateWindow(hwnd);
    MSG msg;
    while (GetMessage(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);//翻译消息
        DispatchMessage(&msg);// 回调函数
    }

    return 0;
}
 LRESULT CALLBACK  Winsunproc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
        )
    {
        switch (uMsg)
        {
        case WM_CHAR:
            char szChar[20];
            sprintf_s(szChar,"char is %d",wParam);
            
            MessageBox(hwnd,(WCHAR *)szChar,(WCHAR *)"蛋疼的窗口",0);
            break;
        case WM_PAINT:
            HDC hDC;
        PAINTSTRUCT ps;
        hDC=BeginPaint(hwnd,&ps);
        TextOut(hDC,0,0,(WCHAR *)"维新培训",strlen("维新培训"));
        EndPaint(hwnd,&ps);
            break;
        case WM_LBUTTONDOWN:
            //鼠标左键
            HDC hdc;
        hdc=GetDC(hwnd);
        TextOut(hdc,0,50,(WCHAR *)"计算机编程语言培训",strlen("计算机编程语言培训"));
        ReleaseDC(hwnd,hdc);
            break;
        case WM_CLOSE:
            if(IDYES==MessageBox(hwnd,(WCHAR *)"是否真的结束?",(WCHAR *)"weixin",MB_YESNO))
        {
            DestroyWindow(hwnd);
        }
            break;
        case WM_DESTROY:
            //关闭动作
        PostQuitMessage(0);
        break;
        default: DefWindowProc(hwnd,uMsg,wParam,lParam);            
        }
        return 0;
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值