我的第一个VC程序

#include <windows.h>

#include<stdio.h>


LRESULT CALLBACK WindowProc(

  HWND hwnd,      // handle to window

  UINT uMsg,      // message identifier

  WPARAM wParam,  // first message parameter

  LPARAM lParam   // second message parameter

);

int WINAPI WinMain(

  HINSTANCE hInstance,  // handle to current instance

  HINSTANCE hPrevInstance,  // handle to previous instance

  LPSTR lpCmdLine,      // pointer to command line

  int nCmdShow          // show state of window

)

{


WNDCLASS wncls;

wncls.cbClsExtra=0;

wncls.cbWndExtra=0;

wncls.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);

wncls.hCursor=LoadCursor(NULL,IDC_CROSS);

wncls.hIcon = LoadIcon(NULL,IDI_ERROR);

wncls.hInstance =hInstance;

wncls.lpfnWndProc = WindowProc;

wncls.lpszClassName = "DEMO";

wncls.lpszMenuName = NULL;

wncls.style = CS_VREDRAW | CS_HREDRAW;


RegisterClass(&wncls);


HWND hwnd;


hwnd = CreateWindow(

"DEMO",

"APPLICATION DEMO",

WS_OVERLAPPEDWINDOW,

0,

0,

800,

600,

NULL,

NULL,

hInstance,

NULL

);

ShowWindow(hwnd,SW_SHOWNORMAL);

UpdateWindow(hwnd);


MSG msg;

while(GetMessage(&msg, NULL, 0, 0))

{

TranslateMessage(&msg);

DispatchMessage(&msg);

}

return msg.wParam;

}

LRESULT CALLBACK WindowProc(

  HWND hwnd,      // handle to window

  UINT uMsg,      // message identifier

  WPARAM wParam,  // first message parameter

  LPARAM lParam   // second message parameter

)

{

switch(uMsg)

{

case WM_LBUTTONDOWN:

MessageBox(hwnd, "Mouse clicked","Clicked", 0);

HDC  hdc;

hdc=GetDC(hwnd);

TextOut(hdc,0, 50,"programming code",strlen("programming code"));

ReleaseDC(hwnd,hdc);

break;

case WM_CHAR:

char szChar[20];

sprintf(szChar,"Char code is %d",wParam);

MessageBox(hwnd,szChar,"Char",0);

break;

case WM_PAINT:

HDC hDC;

PAINTSTRUCT ps;

hDC=BeginPaint(hwnd,&ps);

TextOut(hDC,0,0,"APPLICATION SOFTWARE",strlen("APPLICATION SOFTWARE"));

EndPaint(hwnd,&ps);

break;


case WM_CLOSE:

if(IDYES == MessageBox(hwnd,"您真的要退出程序吗?","Quit",MB_YESNO))

{

DestroyWindow(hwnd);

}

break;

case WM_DESTROY:

PostQuitMessage(0);

default:

return DefWindowProc(hwnd,uMsg,wParam, lParam);

}

return 0;

}


 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值