



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言也能干大事第一节:Windows编程轻松入门.txt-你脚踏俩只船,你划得真漂亮。-每个说不想恋爱的人心里都装着一个不可能的人。我心疼每一个不快乐却依然在笑的孩子。(有没有那么一个人,看透我在隐身,知道我在等人。C语言也能干大事第一节:Windows编程轻松入门板书:1、MingW就是一个C/C+的编译器。编译器和编辑器:编译器其实就是把源代码编译成目标代码的程序;Tc就是一个编辑器:能在里边敲代码,高亮显示,自动提示。2、C-Free里边可以运行、也可以调试。设置断点很简单,就是在要设置断点的代码行前边点击一下鼠标,有了一个红色小点就说明设置好了断点。3、控制台程序的入口是main,Win32程序的入口是WinMain4、以前用TuborC的同学会问“什么叫工程?”。在以前大家用TurboC写的程序一般也就是一个文件,但是用C语言写大程序的时候不可能把所有的代码都写在一个文件中,肯定要写很多文件。“工程(Project)”就是这些问题的一个集合。)在“工程名”中写入你为这个工程取的名字,最好有一定意义。5、Windows程序的骨干代码:#include int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)return 0 ;6、向Windows的世界问好(1)MessageBox(NULL,TEXT(世界你好),TEXT(问好),MB_OK); 第一个参数暂时不讲;第二个是正文;第三个是标题(Caption);第四个是类型。MB_OK就是表示有一个OK按钮【确定】)TEXT是一个宏,当字符串中有中文的时候最好用TEXT来包围这个字符串,虽然不使用TEXT在VC6中没问题,但是在VC7中有问题,而且微软也建议使用TEXT宏,因此在涉及到中文的场合要使用它。他的作用就是把中文转化成不会乱码的格式。(暂时这么认为)。_T(问好),其实_T只是TEXT的一个缩写而已。而且_T在有的低版本里不识别。TEXT()低版本也识别。 换个样子:MessageBox(NULL, TEXT(世界你好), TEXT(你好),MB_OKCANCEL);可从设置希望在对话框中显示的按钮:#define MB_OK0x00000000L#define MB_OKCANCEL0x00000001L#define MB_ABORTRETRYIGNORE0x00000002L#define MB_YESNOCANCEL0x00000003L#define MB_YESNO0x00000004L#define MB_RETRYCANCEL0x00000005L也可以设置对话框中显示的图标:#define MB_ICONHAND0x00000010L#define MB_ICONQUESTION0x00000020L#define MB_ICONEXCLAMATION0x00000030L#define MB_ICONASTERISK0x00000040L比如:MessageBox(NULL, TEXT(世界你好) ,TEXT(你好), MB_ICONQUESTION);(2)可是如果我想显示“确定、取消”按钮的时候同时使用问号图标呢?MessageBox(NULL, TEXT(世界你好), TEXT(你好),MB_OKCANCEL| MB_ICONQUESTION);MessageBox(NULL, TEXT(世界你好), TEXT(你好), MB_ABORTRETRYIGNORE | define MB_ICONEXCLAMATION);(3)思考:到这一步如果你只是在背诵“第一组和第二组中间放一个竖线就可以实现两种效果的组合形式”,那么你未来只会成为一个代码工人。我们要思考一下其背后的原理。首先说“|”是什么意思?“|”是位运算里的“或”运算,只有对应的两个二进位有一位为1时,结果位才为1 ,否则为0。MB_OK、MB_OKCANCEL等的低四位不同,但是高位永远为0;MB_ICONHAND、MB_ICONQUESTION等的低5至第8位不同,而其他位永远为0。这样“MB_OK、MB_OKCANCEL”组的数值与“MB_ICONHAND、MB_ICONQUESTION”组的数值进行或运算后能分别保留各自的部分,也就是在结果值中同时体现两组的取值。拿到1000010以后怎么判断是不是和0000010或运算来的?10000100000010 与&=000001010000110000010 &=0000010这种风格叫“掩码”,在Windows编程中这种用法会经常用到。大家想像一下MessageBox的内部实现是怎么样的?if(mode& MB_OK)= MB_OK)/显示OK按钮if(mode&MB_ICONQUESTION)= MB_ICONQUESTION)/显示问好itoa、atoi定义在stdlib.h中。(4)默认按钮 为什么要有默认按钮:一个方便用户,不用思考,直接点回车就可以选择默认按钮;防止用户误操作,默认的按钮应该是最优选的按钮。“是否保存文件?”默认应该是“确定”,“是否发射导弹?”默认应该是“取消”。 还可以指定哪个按钮是默认按钮,猜一下这些选项的取值的特征是什么?#defineMB_DEFBUTTON1 0x00000000L#defineMB_DEFBUTTON2 0x00000100L#defineMB_DEFBUTTON30x00000200L#defineMB_DEFBUTTON40x00000300L示例代码:MessageBox(NULL, TEXT(你是人吗?), TEXT(火星人), MB_YESNO | MB_ICONQUESTION| MB_DEFBUTTON2);(5)返回值MessageBox是有返回值的,返回值为用户点击的按钮:#define IDOK1#define IDCANCEL2#define IDABORT3#define IDRETRY4#define IDIGNORE5#define IDYES6#define IDNO7代码:int ret = MessageBox(NULL, TEXT(你是人吗?), TEXT(火星人), MB_YESNO | MB_ICONQUESTION);if(ret=IDYES)MessageBox(NULL, TEXT(火星人你好), TEXT(问好),MB_OK);elseMessageBox(NULL, TEXT(欢迎回家来), TEXT(问好),MB_OK);7、课后作业:自己动手写恶搞程序。(1)运行以后弹出询问对话框(有【是】、【否】两个按钮,默认选
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辐照保鲜技术-洞察及研究
- 医保咨询义诊活动方案
- 视觉线索与用户界面设计的创新研究-洞察及研究
- 杜子建互粉营销方案
- 图标标注一致性分析-洞察及研究
- 流动式设备布局-洞察及研究
- 油墨厂操作工培训办法
- 四川省遂宁市遂宁中学2024-2025学年九年级下学期第一次级化学月考试卷(无答案)
- 学生会竞选如何做自我介绍
- 第1-6单元古诗文默写强化训练(含答案)语文统编版七年级上册
- 储能电站项目进度控制与质量管理方案
- 2025年水发集团有限公司招聘(216人)考试模拟试题及答案解析
- 木粉尘防爆安全培训课件
- 地质雷达课件
- 2025年秋二年级上册数学人教版教学计划含教学进度表
- 餐饮四个人合伙合同协议
- AI驱动的化妆品成分毒性预测模型-洞察及研究
- 中小学生禁毒教育课程教学方案及大纲
- 影像科培训课件
- 2025-2030中国氨基酸市场行情监测与发展前景预测报告
- 2025年锦州辅警考试题库(附答案)
评论
0/150
提交评论