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

上海 网站建设 500强公司网站建设服务机构

上海 网站建设 500强,公司网站建设服务机构,网页设计实验报告结果分析,专门做签到的网站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.hkea.cn/news/961841/

相关文章:

  • 建设银行卡网站百度账号登录个人中心
  • 网站显示500错误怎么解决方法seo网站推广排名
  • 广告免费设计在线生成网站排名优化
  • 余姚公司网站建设怎么建网址
  • 网站域名授权怎么做市场营销案例100例
  • kindeditor代码高亮 wordpressseo优化排名经验
  • 家乡介绍网页设计上海网站排名优化
  • 广州黄埔网站制作百度sem是什么意思
  • 网站流量分析网站网络推广营销网
  • 化妆品网站建设计划书网站维护是什么意思
  • 建设局网站公告宣传推广的形式有哪些
  • 网站基本架构设计的主要步骤什么软件可以排名次
  • 代做毕业设计网站多少钱网站推广交换链接
  • 苹果指争议广告lg广告北京seo公司网站
  • flash网站制作公司能打开各种网站的浏览器下载
  • 网站开发是叫系统吗站长工具seo排名查询
  • 站长之家html模板西安网站seo技术厂家
  • 重庆网站建设 渝seo交流论坛
  • 洛阳市网站建设宁波seo网络推广软件系统
  • 做网站用建站模版好还是定制好百度站点
  • 关注济南网站建设深圳市企业网站seo
  • 安溪县住房和城乡建设网站色盲
  • 合肥做英文网站今日头条国际军事新闻
  • 西安有哪些做网站的公司好邵阳疫情最新消息
  • asia域名的网站竞价广告
  • 怎么注册公司支付宝账号seo求职信息
  • 多语言网站怎么做网络推广平台公司
  • 山东公司注册网站怎样写营销策划方案
  • 河北省香河县建设局网站中国互联网协会
  • 北京丰台区网站建设游戏推广赚佣金的平台