当前位置: 首页 > news >正文

重庆制作网站速成班网络科技有限公司电话

重庆制作网站速成班,网络科技有限公司电话,抖音网站表白怎么做,公司网站找不到了1.什么是MFC?全称是Microsoft Foundation Class Library,我们称微软基础类库。它封装了windows应用程序的各种API以及相关机制的C类库MFC是一个大的类库MFC是一个应用程序框架MFC类库常用的头文件afx.h-----将各种MFC头文件包含在内afxwin.h-------包含了各种MFC窗…

1.什么是MFC?

全称是Microsoft Foundation Class Library,我们称微软基础类库。它封装了windows应用程序的各种API以及相关机制的C++类库

MFC是一个大的类库

MFC是一个应用程序框架

MFC类库常用的头文件

afx.h-----将各种MFC头文件包含在内

afxwin.h-------包含了各种MFC窗口类。包含了afx.h和windows.h。

afxext.h-------提供了扩展窗口类的支持,例如工具栏,状态栏等。

2.底层实现窗口

1.1 sdk apl句柄

1.2 消息处理机制

1.3 头文件windows.h

1.4 程序入口 winMain

具体6个步骤:

1.设计窗口 WNDCLASS wc;

2. 注册窗口 RegisterClass(&wc);

3.创建窗口 CreateWindow

4.显示和更新 ShowWindow(hwnd, SW_SHOWNORMAL); UpdateWindow(hwnd);

5.通过循环取消息 MSG msg;

5.1 写循环 while

5.2 GetMessage==false退出循环

5.3 翻译消息

5.4分发消息

6.窗口过程

6.1 LRESULT CALLBACK WindowPro

6.2 返回值用默认处理方式

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

6.4 点击叉子 WM_CLOSE destroy

6.5 WM_DESTROY PostQuitMessage(0)

#include <Windows.h>//底层实现窗口的头文件

//程序入口

//6.处理窗口的过程

LRESULT CALLBACK WindowPro

(

HWND hwnd, // 消息所属的商句柄

UINT uMsg,//具体消息.名称―BOX 消息名

WPARAM wParam, //键盘附加消息

LPARAM lParam //鼠标附加消息

){

switch (uMsg) {

case WM_CLOSE:

//所有xxxWindow为结尾的方法﹐都不会进入到消息队列中,而是直接执行

DestroyWindow(hwnd); // Destroyindown 发送另一个消息 WM__DESTROY

break;

case WM_DESTROY:

PostQuitMessage(0);//真正的关闭窗口

break;

case WM_LBUTTONDOWN:

{

int xPos = LOWORD(lParam);

int yPos = HIWORD(lParam);

char buf[1024];

wsprintf(buf, TEXT("x=%d,y=%d"), xPos, yPos);//拼接字符串

MessageBox(hwnd, buf, TEXT("鼠标左键按下"), MB_OK);

break;

}

case WM_KEYDOWN: //键盘

MessageBox(hwnd, TEXT("键盘按下"), TEXT("键盘键按下0000"), MB_OK);

break;

case WM_PAINT: //绘图

{

PAINTSTRUCT ps; //绘图结构体

HDC hdc = BeginPaint(hwnd, &ps); //开始画图

//画文字

TextOut(hdc, 100, 100, TEXT("hello"), strlen("HELLO"));

//结束画图

EndPaint(hwnd,&ps);

}

break;

}

//返回值用默认处理方式

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

}

//WINAPI代表 _stdcall参数的传递顺序。从右到左 以此入栈,并且在函数返回前 清空堆栈

int WINAPI WinMain(

HINSTANCE hInstance, // 应用程序实例句柄

HINSTANCE hPrevInstance, // 上一个应用程序句柄, 在win32环境下,参数一般为NUL,不起作用了

LPSTR lpCmdLine,//char * argv[]

int nShowCmd //显示命令最大化、最小 、正常

){

//1、设计窗口

//2、注册窗口

//3、创建窗口

//4、显示和更新

//5、通过循环取清息

//6、处理消息(窗口过程)

//设计窗口

WNDCLASS wc;

wc.cbClsExtra = 0;//额外的内存

wc.cbWndExtra = 0;//窗口额外的内存

wc.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);//设置背景

wc.hCursor = LoadCursor(NULL, IDC_HAND);//设置光标如果第一个参数为MLL,代表使用系统提供的光标

wc.hIcon = LoadIcon(NULL, IDI_ERROR);//图标――如果第一个参数为NLL,代表使用系统提供的光标

wc.hInstance = hInstance;//应用程序实例句柄传入inMlain中的形参即可

wc.lpfnWndProc = WindowPro; //回调函数,窗口过程

wc.lpszClassName = TEXT("WIN"); //指定窗口类名称

wc.lpszMenuName = NULL;//菜单名称

wc.style = 0; //显示风格,0代表默认风格

//2.注册窗口

RegisterClass(&wc);

//3.创建窗口

/*

lpClassName, 类名

lpWindowName, 标题名

dwStyle, WS_OVERLAPPEDWINDOW 风格

x, 显示坐标 CW_USEDEFAULT 默认值

y,\

nWidth,宽高

nHeight,

hWndParent,父窗口

hMenu, 菜单 NULL

hInstance, 实例句柄 hInstance

lpParam)\ 附加值 NULL

*/

HWND hwnd= CreateWindow(wc.lpszClassName,TEXT("WINDOWS"),WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

//4.显示和更新

ShowWindow(hwnd, SW_SHOWNORMAL);

UpdateWindow(hwnd);

//5.通过循环取消息

/*

HWND hwnd; 主窗口句柄

UINT message; 具体消息名称

WPARAM wParam; 附加消息,键盘消息

LPARAM lParam; 附加消息,鼠标

DWORD time; 消息产生时间

POINT pt; 附加消息, 鼠标消息 x y

*/

MSG msg;

while (GetMessage(&msg, NULL, 0, 0) == FALSE) {

/*

_Out_ LPMSG lpMsg,消息

_In_opt_ HWND hWnd, 捕获窗口,填NULL代表捕获所有的窗口

_In_ UINT wMsgFilterMin,最小最大的过滤的消息 一般填入0

_In_ UINT wMsgFilterMax

*/

//关闭了,退出循环

/*if(GetMessage(&msg, NULL, 0, 0)==FALSE)

{

break;

}*/

//翻译消息

TranslateMessage(&msg);

//不是false,分发消息

DispatchMessage(&msg);

}

return 0;

}

3.利用mfc创建窗口

3.1 mfc头文件 afxwin.h

3.2 自定义类 继承于CWinApp 应用程序类 MyApp app应用程序对象﹐有且仅

有一个

3.3 程序入口 InitInstance()

3.4 入口里 创建窗口

3.5 窗口类MyFrame 继承于 CFrameWnd

3.6 MyFrame构造中create(NULL,标题名称)

3.7 创建窗口对象√

3.8 显示和更新

3.9 m_pMainWnd = frame; //保存指向应用程序的主窗口的指针

3.10 return TRUE

3.11 对项目进行配置 在共享DLL中使用MFRC

3.12遇到 LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用 MSVCRTD.lib test

解决方案:

http://www.yayakq.cn/news/195153/

相关文章:

  • 企业没有网站怎么做seo优化贵阳双龙区建设局网站
  • 南宫网站建设区块链开发违法吗
  • 网站别人给我做的备案 我能更改吗找人做的网站怎么
  • 海口h5建站模板斗图在线制作生成器
  • 太原网站制作公司飞向未来淘宝网页版电脑版入口
  • 广州建设银行官方网站wordpress作者信息插件
  • 扬州恒通建设网站装修设计在线
  • 商洛城乡建设局网站精美网站开发方案
  • 域名做网站自己的电脑宁波网站建设小程序开发
  • 多用户自助建站系统源码10类地方网站 总有适合你做的
  • 有一个做搞笑英语视频网站小金狮游戏ui培训
  • 智能建站系统哪个好建网站 维护
  • 吴忠市利通区建设局网站做柜子比较好看的网站
  • 广州制作网站网站开发 定制 合同 模板
  • 绍兴网站开发08keji机关网站建设建议
  • 芜湖做网站建设公司龙岩微信网站建设
  • 遂宁网站建设略奥网络福建建设工程信息网官网查询
  • 渭南网站建设服务开网站需要什么流程
  • 站内免费推广的方式有哪些财务公司代理记账业务
  • 商业网站设计与制作论文关于网页制作的毕业设计
  • 全新正版营销网站宁波正规seo快速排名公司
  • 购物网站建立mysql进程太多wordpress
  • 佛山用户网站建站如何做网站路径分析
  • 安徽建设银行招聘网站搜索点击软件
  • 网站建设图片教程视频教程wordpress开发cms
  • 网上那些彩票网站可以自己做吗什么是网站后台
  • 2w网站建设模式如何做好网站站内优化
  • 个人网站 用什么域名小型企业oa办公系统
  • 邵阳做网站的有哪些学做预算有网站吗
  • 用模块做网站用asp做的大型网站