zoukankan      html  css  js  c++  java
  • 第一个Windows程序

    View Code
     1 #include<Windows.h>
     2 
     3 LRESULT CALLBACK WindowProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam);
     4 
     5 int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,LPSTR lpCmdLine,int nCmdSHow)
     6 {
     7     WNDCLASSEX WindowClass;
     8     static LPCTSTR szAppName=L"OFWin";
     9     HWND hWnd;
    10     MSG msg;
    11 
    12     WindowClass.cbSize=sizeof(WNDCLASSEX);
    13     WindowClass.style=CS_HREDRAW|CS_VREDRAW;
    14     WindowClass.lpfnWndProc=WindowProc;
    15 
    16     WindowClass.cbClsExtra=0;
    17     WindowClass.cbWndExtra=0;
    18 
    19     WindowClass.hInstance=hInstance;
    20 
    21     WindowClass.hIcon=LoadIcon(0,IDI_APPLICATION);
    22     WindowClass.hCursor=LoadCursor(0,IDC_ARROW);
    23 
    24     WindowClass.hbrBackground=static_cast<HBRUSH>(GetStockObject(GRAY_BRUSH));
    25 
    26     WindowClass.lpszMenuName=0;
    27     WindowClass.lpszClassName=szAppName;
    28     WindowClass.hIconSm=0;
    29 
    30 
    31     RegisterClassEx(&WindowClass);
    32 
    33     hWnd=CreateWindow(szAppName,L"A Basic Window the Hard Way",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,
    34                       CW_USEDEFAULT,CW_USEDEFAULT,0,0,hInstance,0);
    35     ShowWindow(hWnd,nCmdSHow);
    36     UpdateWindow(hWnd);
    37 
    38     while (GetMessage(&msg,0,0,0)==TRUE)
    39     {
    40         TranslateMessage(&msg);
    41         DispatchMessage(&msg);
    42     }
    43     
    44     return static_cast<int>(msg.wParam);
    45     
    46 }
    47 
    48 LRESULT CALLBACK WindowProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
    49 {
    50     HDC hDC;
    51     PAINTSTRUCT PaintSt;
    52     RECT aRect;
    53 
    54     switch(message)
    55     {
    56     case WM_PAINT:
    57         hDC=BeginPaint(hWnd,&PaintSt);
    58         GetClientRect(hWnd,&aRect);
    59         SetBkMode(hDC,TRANSPARENT);
    60 
    61         DrawText(hDC,L"But,soft!What light through yonder window breaks?",-1,&aRect,DT_SINGLELINE|DT_CENTER|DT_VCENTER);
    62 
    63         EndPaint(hWnd,&PaintSt);
    64         return 0;
    65     case WM_DESTROY:
    66         PostQuitMessage(0);
    67         return 0;
    68 
    69     default:
    70         return DefWindowProc(hWnd,message,wParam,lParam);
    71     }
    72 }
  • 相关阅读:
    一张图片入门Python
    4.1. 如何在Windows环境下开发Python
    你必须知道的EF知识和经验
    XUnit的使用
    如何使用NUnit
    Entity Framework 不支持DefaultValue
    Have You Ever Wondered About the Difference Between NOT NULL and DEFAULT?
    Validation failed for one or more entities. See 'EntityValidationErrors' property for more details
    Entity Framework 与多线程
    sqlite中的自增主键
  • 原文地址:https://www.cnblogs.com/daidaigua/p/2524442.html
Copyright © 2011-2022 走看看