zoukankan      html  css  js  c++  java
  • Win SDK 标准程序

    //-Registering window class.
    
    //-Creating window.
    
    //-Creating message loop.
    
    //-Implement WndProc function that handles incoming messages.
    
    #include <windows.h>
    
    LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;
    
    int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
    
    PSTR szCmdLine, int iCmdShow)
    
    {
    
    static TCHAR szAppName[] = TEXT ("HelloWin") ;
    
    HWND hwnd ;
    
    MSG msg ;
    
    WNDCLASS wndclass ;
    
    wndclass.style = CS_HREDRAW | CS_VREDRAW ;
    
    wndclass.lpfnWndProc = WndProc ;
    
    wndclass.cbClsExtra = 0 ;
    
    wndclass.cbWndExtra = 0 ;
    
    wndclass.hInstance = hInstance ;
    
    wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;
    
    wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;
    
    wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
    
    wndclass.lpszMenuName = NULL ;
    
    wndclass.lpszClassName = szAppName ;
    
    if (!RegisterClass (&wndclass))
    
    {
    
    MessageBox (NULL, TEXT ("This program requires Windows NT!"),
    
    szAppName, MB_ICONERROR) ;
    
    return 0 ;
    
    }
    
    hwnd = CreateWindow (szAppName, // window class name
    
    TEXT ("The Hello Program"), // window caption
    
    WS_OVERLAPPEDWINDOW, // window style
    
    CW_USEDEFAULT, // initial x position
    
    CW_USEDEFAULT, // initial y position
    
    CW_USEDEFAULT, // initial x size
    
    CW_USEDEFAULT, // initial y size
    
    NULL, // parent window handle
    
    NULL, // window menu handle
    
    hInstance, // program instance handle
    
    NULL) ; // creation parameters
    
    ShowWindow (hwnd, iCmdShow) ;
    
    UpdateWindow (hwnd) ;
    
    while (GetMessage (&msg, NULL, 0, 0))
    
    {
    
    TranslateMessage (&msg) ;
    
    DispatchMessage (&msg) ;
    
    }
    
    return msg.wParam ;
    
    }
    
    LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
    
    {
    
    HDC hdc ;
    
    PAINTSTRUCT ps ;
    
    RECT rect ;
    
    switch (message)
    
    {
    
    case WM_CREATE:
    
    PlaySound (TEXT ("hellowin.wav"), NULL, SND_FILENAME | SND_ASYNC) ;
    
    return 0 ;
    
    case WM_PAINT:
    
    hdc = BeginPaint (hwnd, &ps) ;
    
    GetClientRect (hwnd, &rect) ;
    
    DrawText (hdc, TEXT ("Hello, Windows 98!"), -1, &rect,
    
    DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
    
    EndPaint (hwnd, &ps) ;
    
    return 0 ;
    
    case WM_DESTROY:
    
    PostQuitMessage (0) ;
    
    return 0 ;
    
    }
    
    return DefWindowProc (hwnd, message, wParam, lParam) ;
    
    }
    
  • 相关阅读:
    2017-3-7 leetcode 66 119 121
    2017-3-6 leetcode 118 169 189
    2017-3-5 leetcode 442 531 533
    c++ std
    2017-3-4 leetcode 414 485 495
    2017-3-3 leetcod 1 35 448
    想做手游
    编程规范
    1165: 零起点学算法72——首字母变大写
    1164: 零起点学算法71——C语言合法标识符(存在问题)
  • 原文地址:https://www.cnblogs.com/qinfengxiaoyue/p/3379698.html
Copyright © 2011-2022 走看看