⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ex_api.cpp

📁 一系列的c++例子 一步一步由浅入深 有 聊天室
💻 CPP
字号:
// ex_API.cpp : Defines the entry point for the application.
#include "stdafx.h"
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); //窗口函数说明
int APIENTRY WinMain(HINSTANCE hInstance,           //WinMain函数说明 
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
  // TODO: Place code here.
 char lpszClassName[]="窗口";       //窗口类名
 char lpszTitle[]="Windows SDK API编程窗口示例程序";   //窗口标题名
 //---------------窗口类定义-------------------------------------
 /*在Windows应用程序中,窗口类定义了窗口的形式与功能。窗口类定义通过给窗口类数据结构WNDCLASS赋值完成,该数据结构中包括窗口类的各种属性。*/
 WNDCLASS wndclass;
 wndclass.style=0;                                 //窗口类型为缺省类型
 wndclass.lpfnWndProc=WndProc;                   //窗口函数为WndProc
 wndclass.cbClsExtra=0;                           //窗口类无扩展
 wndclass.cbWndExtra=0;                          //窗口实例无扩展
 wndclass.hInstance=hInstance;                     //当前实例句柄
 wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);   //使用缺省图标
 /*
  LoadIcon():在应用程序中加载一个窗口图标
  LoadIcon()函数原型为:
     HICON LoadIcon(
     HINSTANCE hInstance,//图标资源所在的模块句柄,NULL则使用系统预定义图标
     LPCTSTR lpIconName //图标资源名或系统预定义图标标识名
     ) */
 wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);      //窗口采用箭头光标  
 wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); //窗口背景为白色
wndclass.lpszMenuName=NULL;                       //窗口中无菜单
 wndclass.lpszClassName=lpszClassName;                //窗口类名为'窗口实例'
 //------------------以下是进行窗口类的注册---------------------------
 /*窗口类必须先注册后使用。窗口类的注册由注册函数RegisterClass()实现。
其形式为:
    RegisterClass(&wndclass)    &wndclass为窗口类结构
    RegisterClass函数的返回值为布尔值,注册成功则返回真
 */
 if (! RegisterClass(&wndclass))     //注册窗口,若失败,则发出声音
 { MessageBeep(0);
   return FALSE;
 }
  
 //创建窗口操作
 HWND hwnd; //窗口结构
    hwnd=CreateWindow(lpszClassName,   //创建窗口,窗口类名
  lpszTitle,                     //窗口实例的标题名
  WS_OVERLAPPEDWINDOW,           //窗口的风格
  CW_USEDEFAULT,CW_USEDEFAULT,   //窗口左上角坐标为缺省值
  CW_USEDEFAULT,CW_USEDEFAULT,   //窗口的高度和宽度为缺省值
  NULL,                          //此窗口无父窗口
  NULL,                          //此窗口无主菜单
  hInstance,                     //应用程序当前句柄
  NULL);                         //不使用该值
 ShowWindow(hwnd,nCmdShow);         //显示窗口
 UpdateWindow(hwnd);                //绘制用户区
 
 MSG msg; //消息结构 
 while( GetMessage(&msg,NULL,0,0))  //消息循环
 { TranslateMessage(&msg);
   DispatchMessage(&msg);
 }
 return msg.wParam;                //程序终止时,将信息返回操作系统
}
//-----------------------------窗口函数---------------------------------------
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
    char messageleft[]="the left button have been pushed";
    //单击鼠标左键,消息框将显示的提示内容
    switch(message)//判断消息标识符
	{
	   case WM_LBUTTONDOWN:
		{
	     MessageBox(GetFocus(),messageleft,"hello",MB_OK|MB_ICONINFORMATION);
		break;
		} 
       case WM_DESTROY:
         PostQuitMessage(0); //调用该函数发出WM_QUIT消息
       default: //缺省消息处理函数
          return DefWindowProc(hwnd,message,wParam,lParam);
  }  return (0);
}




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -