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) ;
    
    }
    
  • 相关阅读:
    HDFS与YARN HA部署配置文件
    Zookeeper学习(一)
    Kafka学习(一)
    Azkaban(3.x)编译安装使用
    回归问题及应用
    K好数
    最大最小公倍数
    区间K大数查询
    幂方分解
    瓷砖铺放
  • 原文地址:https://www.cnblogs.com/qinfengxiaoyue/p/3379698.html
Copyright © 2011-2022 走看看