vc++打开文件时程序不响应,结合个人情况,得到下面解决过程:
具体做法如下:
1. 下载FileTool.exe,并解压
(下载地址https://www.doczj.com/doc/0a1326423.html,/kb/241396/en-us,其为一自解压文件,双击解压,注意解压目录)
2. 打开VC6.0,点击“文件-打开工作空间”,选择刚解压出来的FileTool.dsw,并确定
3. 点击“组建-组建FileTool.dll.”生成FileTool.dll文件
(生成的FileTool.dll文件在FileTool下的Debug文件夹里,也可以下载现成的FileTool.dll文件)
4. 把生成的FileTool.dll文件拷贝到安装目录下的ADDINS文件夹下,例如D:\vc++\VC6CN\COMMON\MSDEV98\ADDINS,在VC6.0中点击“工具-制定”
5. 在出现的“制定”对话框中,点击附加项和宏文件标签
6. 点击浏览,定位刚才生成的dll文件,点击打开,然后关闭
(注意添加时文件类型选Add_ins(.dll)或者All Files(*.*))
成功后出现FileTool Developer Studio Add-in勾选后点关闭
如果不成功,出现错误Unable to register this add-in because its DLLRegisterServer return an error,解决办法如下:
(1)首先,win7下使用administrator(管理员)身份登录,在"开始"菜单的搜索框中输入cmd 回车,就可以看到该控制台程序了,然后右键单击,选择"以管理员身份运行",此时就获得
了管理员权限。
(2)其次,在弹出的命令窗口中使用注册命令"regsvr32.exe" + add-in.dll,例如:
如果安装目录在D盘,首先在命令窗口中输入:“D:”,只输入引号内的命令,进入D盘目录下,
然后输入命令:
D:\>regsvr32 D:\vc++\VC6CN\COMMON\MSDEV98\ADDINS\FileTool.dll(其中“D:\”为命令窗口中自带的,需要输入的是后面部分)
(3)然后回到步骤5,再次进行5,6步
7. 成功后,此时VC界面中会出现一个上面只有两个图标的工具栏,点击其右上
角的“X”按钮将其关闭,然后关闭VC6.0并重新启动程序
8. 还是在VC6.0中点击“工具-制定”
9. 在“制定”对话框中点击“键盘”标签
10. 从“类别”的下拉菜单框中选择“文件”
11.在“命令”窗口中选择FileOpen
12.在“当前键”窗口中选择CTRL+O条目,并点击“移去”
13.从“类别”的下拉菜单框中选择“工程”
14.在“命令”窗口中选择InsertFilesIntoProject,如果之前给它注册了快捷键,则按照上面所说步骤移除之,默认情况下它是没有快捷键的
15.从“类别”的下拉菜单框中选择Add-Ins
16.这时“命令”窗口中应该已经多出了AddFileToProject和OpenFile两个条目,可以给它们分配快捷键了,选择OpenFile条目,然后点击Press New Shortcut Key输入框,按下想设置的快捷键或快捷键组合(如打开文件默认的快捷键CTRL+O,直接按键盘上的ctrl键和o键即可),点击“分配”
可以以同样的方法为其它的命令设置快捷键,不需要则不添加
最后,还应该在菜单栏内做相应的改动,移除无法使用的旧Open命令,换上新的:
1. 在VC6.0中点击“工具-制定-命令”
2. 点击“文件”菜单,并将弹出菜单中的Open命令拖拽至弹出菜单之外并释放
3. 点击“工程”菜单,并将弹出菜单中的Add To Project命令拖拽至弹出菜单之外并释放
4. 在“制定”对话框中选择“命令”标签
5. 在“类别”列表中选择Add-ins
6. 点击File菜单,将“OpenFile”命令(图标为字母O)鼠标直接拖动到之前Open命令所在位置
点击Project菜单,将AddFileToProject命令(图标为字母A)拖动到之前Add To Projec命令所在位置
这样,使用新添加的命令,即可解决VC++中无法打开文件和无法向工程中添加文件的问题,希望对大家有所帮助。
参考链接:
https://www.doczj.com/doc/0a1326423.html,/kb/241396/en-us
https://www.doczj.com/doc/0a1326423.html,/garin915/blog/item/c9f6faa4cd7253fa9152ee78.html
https://www.doczj.com/doc/0a1326423.html,/spenser123/article/details/6033411
https://www.doczj.com/doc/0a1326423.html,/share/detail/22082408
武汉轻工大学VC++程序设计大作业 院系电气与电子工程学院 班级 学号1204 姓名 日期2013.11.22
1题目 编写MFC下的单文档程序,通过鼠标点击选择两个点,作为矩形左上角、右下角,然后绘制矩形。(对应12题) 2思路 首先点击鼠标,选中左上角,然后拖动鼠标,在右下角拿起,这样矩形就就可以实现了。 3程序实现过程 首先建立MFC单文档程序
然后建立类向导 添加鼠标事件
添加CPoint成员变量m_OrigPoint 4关键代码 // RectangleView.cpp : implementation of the CRectangleView class // #include "stdafx.h" #include "Rectangle.h" #include "RectangleDoc.h" #include "RectangleView.h"
#ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CRectangleView IMPLEMENT_DYNCREATE(CRectangleView, CView) BEGIN_MESSAGE_MAP(CRectangleView, CView) //{{AFX_MSG_MAP(CRectangleView) ON_WM_LBUTTONDOWN() ON_WM_LBUTTONUP() //}}AFX_MSG_MAP // Standard printing commands ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CRectangleView construction/destruction CRectangleView::CRectangleView() { // TODO: add construction code here } CRectangleView::~CRectangleView() { } BOOL CRectangleView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return CView::PreCreateWindow(cs); }
VC程序设计课程设计 报告书 设计题目:简单绘图软件 院系:信息工程学院 班级:软件1101 组别:第二十二组 学号: 1110024130 姓名: 方锦 起止日期:2012年12月10日~2012年12月20日指导教师:张顺利
目录 绪论 -------------------------------------------------------------------------------- 3一概要设计 -------------------------------------------------------------------- 5 1.主要功能---------------------------------------------------------------------- 5 2.设计的概要设计功能模型框架图---------------------------------------- 5 二设计的详细设计------------------------------------------------------------- 5 1工具栏的编辑---------------------------------------------------------------- 6 2状态栏的编辑 --------------------------------------------------------------- 6 四编码和测试---------------------------------------------------------------- 9五设计总结 ------------------------------------------------------------------ 10 1.过程分析-------------------------------------------------------------------- 10 2.经验教训及分析 -----------------------------------------------------------11 3程序维护 --------------------------------------------------------------------11 六参考文献-------------------------------------------------------------------- 12
3.25设计一个类CRectangle,除了有相关的数据成员,该类要求包含下述成员1 函数:矩形从一个位置移动到另一个位置的Move()函数;改变矩形大小的Size 2 ()函数;返回矩形左上角的坐标坐标值的Where()函数;计算矩形面积的Area 3 ()函数。 4 代码如下:#include
} 20 ~CRectangle() 21 {} 22 void Move(double , double); 23 void Size(double ,double); 24 void Where(); 25 void Area(); 26 }; 27 void CRectangle::Move(double x, double y) 28 { 29 cout<<"矩形按向量("< 南京工业大学继续教育学院 《VC++程序设计》练习题 2010学年第一学期使用班级:H工升本/HY交升本/H自升本 一、选择题(每小题2分,共计40分) (1)下列关于栈的叙述正确的是 A)栈是非线性结构B)栈是一种树状结构 C)栈具有先进先出的特征D)栈具有后进先出的特征 (2)结构化程序设计所规定的三种基本控制结构是 A)输入、处理、输出B)树形、网形、环形 C)顺序、选择、循环D)主程序、子程序、函数 (3)结构化程序设计的一种基本方法是 A)筛选法B)递归法C)归纳法D)逐步求精法 (4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是: A)选择B)投影C)连接D)并 (5)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是() A)面向过程B)面向对象C)安全性D)复用性 (6)C++语言的跳转语句中,对于break和continue说法正确的是() A)break语句只应用与循环体中 B)continue语句只应用于循环体中 C)break是无条件跳转语句,continue不是 D)break和continue的跳转范围不够明确,容易产生问题 (7)for(int x=0,y=o;!x& &y<=5;y++)语句执行循环的次数是() A)0B)5C)6D)无次数 (8)考虑函数原型void test(int a,int b=7,char="*"),下面的函数调用中,属于不合法调用的是() A)test(5); B)test(5,8); C)test(6,"#") D)test(0,0."*"); (9)下面有关重载函数的说法中正确的是() A)重载函数必须具有不同的返回值类型;B)重载函数形参个数必须不同; C)重载函数必须有不同的形参列表D)重载函数名可以不同; (10)下列关于构造函数的描述中,错误的是() A)构造函数可以设置默认参数;B)构造函数在定义类对象时自动执行 C)构造函数可以是内联函数;D)构造函数不可以重载 (11)下面描述中,表达错误的是() A)公有继承时基类中的public成员在派生类中仍是public的 B)公有继承是基类中的private成员在派生类中仍是private的 C)公有继承时基类中的protected成员在派生类中仍是protected的 D)私有继承时基类中的public成员在派生类中是private的 (14)在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是(B) A)fail B)eof C)bad D)good (15). ( D )能用作用户自定义标识符 A friend B-var C 3xyz D Float (16). 指针可以用来表示数组元素,int a[3][7],表示错误的是___A___ A.*(a+1)[5] B.*(*a+b) C.*(*(a+1)) D.*(a[0][0]+2) 烟台南山学院计算机系《可视化程序设计Visual C++》作业 2016-2017学年第二学期 班级:计科1401 姓名:毛宗磊 学号:201422031026 专业:计算机科学与技术 指导教师:王玉健 1、创建计算器 1、打开vc6.0编译环境,选择file新建选项,选择工程,选择MFC APPWIZARD(exe),设置工程名字和位置,选择建立对话框,完成基本设置。 2、添加静态文本、编辑框以及按钮,修改基本属性,如图所示 3、创建类向导,在members variables中添加代码,如图所示 4、点击求和按钮,函数的代码如下 5、点击归零按钮,设置代码如下 6、实验结果如下 2、设置背景颜色 1、在文件视图中找到Onpaint()函数,设置代码如下: CRect rect; GetClientRect(rect); CPaintDC dc(this); dc.FillSolidRect(rect,RGB(10,20,180)); CDialog::OnPaint(); 2、设置完成后效果如下: 3、设置变色按钮功能 1、添加一个按钮,设置其基本属性 2、在头文件里定义几个控制颜色的变量 int m_nred; int m_ngreen; int m_nblue; 3、在变色按钮函数内添加如下代码: CColorDialog dlg; if(dlg.DoModal()==IDOK) { COLORREF color=dlg.GetColor(); m_nred=GetRValue(color); m_ngreen=GetGValue(color); m_nblue=GetBValue(color); Invalidate(); } 4、在绘图函数中修改几个变量的值 dc.FillSolidRect(rect,RGB(m_nred,m_ngreen,m_nblue)); 5、效果图如下 4、设置随机色 1、添加一个随机色按钮,设置基本属性 一、填空题:(每小题2分,共20分) 1.工程名称为kkk的单文档应用程序,默认情况下其文档类名称为() 2.切分窗口有两种类型:()切分和()切分。 3.ActiveX控件有三个属性集:()、()和方法。 4.Windows操作系统支持两种形式的多任务:基于()的多任务和基于()的多任务 5.Windows提供了四种同步对象:()创建或打开一个命名的或匿名的事件对象)、(把指定的事件对象设置为有信号状态)、(把指定的事件对象设置为无信号状态/)、(请求事件对象)事件对象、和临界区。 6.在Windows系统中,消息有数百种之多,可以大致分为以下三类:()、()和命令消息 7.套接字的数据结构中包含的信息应该有:()、()和协议 8.ActiveX控件的二进制文件的扩展名为(CAB)。9.若从扩展动态链接库中导出类,需在定义该类时添加关键字()10.画刷共有三种基本类型:()、()和图案画刷。 二、选择题:(每小题2分,共40分) 1.下列()函数用于弹出模式对话框? (A)OnInitDialog(B)DoModal(C)OnOK(D)OnCancel 2.()函数用于设置注册数据库,注册文档模板等初始化工作。 (A)I nitInstance(B)OnDraw(C)OnOK(D)OnCancel 3.()函数作用是初始化一个新文档。 (A)GetDocument(B)DeleteContent(C)OnNewDocument(D)Dump 4.自动化客户可以通过自动化服务器的()来控制自动化服务器。 (A)过程(B)属性(C)事件(D)方法 5.所有的标准Windows消息都以WM_为前缀,标准Windows消息应该由相应的窗口类和视图类进行处理,它又分为以下几类:() (A)鼠标消息(B)控件消息(C)键盘消息(D)命令消息(E)窗口消息 6.下列哪些属于文档与视图之间相互作用的函数?() (A)Serialize(B)OnUpdate(C)GetDocument(D)GetNextView 7.对于SDI应用程序,命令传递顺序为:() (A)文档->视图->SDI主框架窗口->应用程序 (B)视图->文档->SDI主框架窗口->应用程序 (C)应用程序->文档->视图->SDI主框架窗口 (D)应用程序->视图->文档->SDI主框架窗口 得分评卷人 得分评卷人 目录 目录 ......................................................................................................................................... I 摘要 ....................................................................................................................................... II 1 设计目的 (1) 2 设计要求 (2) 3 设计内容 (3) 3.1 系统分析 (3) 3.2项目创建 (3) 3.3界面设计 (5) 3.4 代码实现 (8) 3.5 方案分析总结 (17) 总结与致谢 (20) 参考文献 (21) 附件 (22) 摘要 GPA英语全称是grade point average,意思就是平均分。GPA的精确度往往达到小数点后1到2位,如:3.0,3.45。GPA的标准计算方法是将大学成绩的加权平均数乘以4,再除以100,得出平均分。美国的GPA满分是4分,即A=4,B=3,C=2,D=1。一般来讲,百分制中的90分以上可视为4分,80分以上为3分,70分以上为2分,60分以上为1分,五分制中的5分为4分,4分为3分,3分为2分,2分为1分。 这次课程设计完成了一个简单的GPA计算器。本次设计系统具有良好的界面,必要的交互信息和较好的健壮性,使我们能快捷简单地进行操作,即时准确地获得需要的计算的结果,充分降低了数字计算的难度和节约了时间,对人们的生活有一定的帮助。 关键词:GPA;VC++6.0;MFC;控件; 西安科技大学 《VC++程序设计》 实验报告 题目画图 院、系(部)计算机科学与技术学院专业及班级 学号 姓名:szgkb 日期 2014.6.2 1 题目要求 建立一个通过“画图”程序,它是基于MFC的多文档应用程序,并且应用程序的风格样式具有Office视觉样式的Ribbon风格。在实现程序的过程中,要创建具有Office视觉样式的项目,再为应用程序的Ribbon功能区添加相应的绘图命令。在实现绘图中,能够很好地使用CDC类中的绘图函数,以实现直线、矩形、圆弧、椭圆等的绘制。了解MFC中设备环境类和坐标映射方式,并且了解常用的GDI对象。扩展“画图”程序实现图形的绘制、保存、滚动等功能。 2 功能需求 选择“绘图”选项卡后,将会展开一些绘图工具。选择某个绘图工具后,便可以在客户区中绘制相应的图形,还可以点击面板上的“画笔颜色”和“填充颜色”按钮,利用弹出的颜色对话框分别设置绘图的颜色及填充的颜色,而且单击“文本”按钮还可以在客户区中输入文本内容,在文本输入中,涉及到文本的颜色、插入符的位置、字体、退格、回车、文本字符等的正确处理。 3 总体设计 建立一个MFC的基于对话框的应用程序,取名为MyPaint1。接下来创建Ribbon 功能区,创建了“工具”、“颜色”两个面板。新建绘图类CDrawShape用以封装自由线、直线、矩形、椭圆、圆的绘制过程。在CMyPaint1View中响应绘图命令并通过添加鼠标左键按下以及移动的消息响应函数(OnLButtonDown、OnMouseMovehe、 OnLButtonup)来实现图形绘制。另外设置插入符、文本内容、文本颜色,来实现文本的输出。最后进行对绘图光标的修改。 3.1 系统模块 3.2 系统业务处理流程运行“画图”程序“绘图”菜单 工具面板 客户区绘图 颜色面板 保存图形 《Visual C++程序设计》课程大作业 题目名称:多功能模拟时钟 院系名称:计算机科学与信息工程学院 专业班级:10计科嵌入班 学号姓名:李博201003010028 2012 年 5 月 目录 一、选题意义 (1) 二、需求分析 (1) 三、总体设计 (1) 四、详细设计 (1) 五、系统测试 (1) 六、总结 (1) 七、参考文献 (1) 注意:大作用报告完成后要换成自己大作用的实际页码 一、选题的意义 此设计选择意义在于引导学生学会设计多功能模拟时钟显示窗口,进一步掌握Visual C++应用程序,系统的的学习面向对象编程思想,了解MFC架构,逐步熟悉可视化编程环境Visual C++,并在此环境下设计并实现多功能模拟时钟显示程序。 二、需求分析 1、指针式时钟,为便于演示,时钟速度应比实际时间快20倍,即1小时相当于3分钟。 2、时间、日期数字式时钟显示,秒表功能。 3、数字式时钟的时间显示与指针式时钟显示一致。 4、可以进行时间和日期设置 三、总体设计 MainFrame.cpp程序框架类,实现通过工具栏上的按钮调整时间和指针式时钟的运行和停止。具体功能通过OnSettime(),OnStart(),OnStop()等函数实现。 Clock13View.cpp视图类。由于本程序的主要界面均通过函数绘制,故该类为本程序的主要部分,包含函数较多。有: CClock13View(),OnLButtonDown(),SetClock(),GetPoint(),OnDraw(),OnSetTime(),OnT imer(),OnStart(),OnStop()等实现定时、绘制表盘、指针、刷新及数字时钟的输出等功能 其余文件和类均由向导自动生成 实验报告 课程名称 VC++程序设计 专业班级电子0942 姓名 学号 电气与信息学院 和谐勤奋求是创新 实验教学考核和成绩评定办法 1.课内实验考核成绩,严格按照该课程教学大纲中明确规定的比重执行。实验成绩不合格者,不能参加课程考试,待补做合格后方能参加考试。 2.单独设立的实验课考核按百分制评分,考核内容应包括基本理论、实验原理和实验。3.实验考核内容包括:1)实验预习;2)实验过程(包括实验操作、实验记录和实验态度、表现);3)实验报告;权重分别为、、;原则上根据上述三个方面进行综合评定。学生未取得1)和2)项成绩时,第3)项成绩无效。 4.实验指导教师应严格按照考核内容分项给出评定成绩,并及时批改实验报告,给出综合成绩,反馈实验中出现的问题。实验成绩在教师手册中有记载。 实验报告主要内容 一.实验目的 二.实验仪器及设备 三.实验原理 四.实验步骤 五.实验记录及原始记录 六.数据处理及结论 七.实验体会(可选项) 注:1. 为了节省纸张,保护环境,便于保管实验报告,统一采用A4纸,实验报告建议双面打印(正文采用宋体五号字)或手写,右侧装订。 2. 实验类别指验证、演示、综合、设计、创新(研究)、操作六种类型实验。 3. 验证性实验:是指为了使学生巩固课程基本理论知识而开设的强调演示和证明,注重实验结果(事 实、概念或理论)的实验。 4. 综合性实验:是指实验内容涉及本课程的综合知识或本课程相关的课程知识的实验。 5. 设计性实验:是指给定实验目的、要求和实验条件,由学生自行设计实验方案并加以实现的实验。 一、实验目的 1.进一步加深对类和对象的理解。 2.掌握类的构造函数和析构函数的概念、意义和使用方法。 3.掌握重载构造函数的含义和使用。 4.编写一个较为复杂的类和对象的应用程序。 二、实验内容 1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,还有一个成员函数area( )用来计算并显示矩形的面积,并编写main函数进行测试。程序:# include<> # include<> class Rect { public: Rect(int l, int w); ~Rect(); int Area(); private: int nLength; int nWidth; }; Rect::Rect(int l, int w) {cout<<"executing constructor..."< VC++ PROJECT ECJTU NAME STUDENT ID LIU * 2******* LI * 2******* DAI * 2******* WANG * 2******* ZUO * 2******* STUDENT CLASS: CLASS 1 MAJOR : 2******* Certificate This to certify that the following students: 1.Liu *,and Student ID No is 2******* 2.Li * and Student ID No is 2******* 3.Dai * and Student ID No is 2******* 4.Wang * and Student ID No is2******* 5.Zuo * and Student ID No is 2******* are done this project under the guidance and supervision of MR.RAVI and it is submitted to the East China JiaoTong University as partial fulfillment of Software and Machanic & Electronics Engineering graduation. Signature of the Guide Acknowledgement Firstly, we would like to express my deep and sincere gratitude to our parents, as they gave me life and brought me up. Besides, they do their best to make our life better, but they seldom care about themselves. We know they have so many hopes and wishes for my future, and I l’l do my best to respond you. Secondly, we warmly thank Professor Mr. Ravi for his valuable advice and patient help. He taught us the Visual C++ course and let me know the foundation of MFC. Moreover, thanks to the help of Mr. Ravi, my ability of spoken English has been improved. Finally, we would like express my thanks to other classmates who helped us with the process of doing the project. 聊天程序设计报告 ----网络编程设计报告 目录 【1】设计原理————————————————————————1【2】功能描述————————————————————————1【3】详细设计————————————————————————2【4】工作进度————————————————————————7【5】设计总结————————————————————————8【6】使用方法————————————————————————9【7】附录——————————————————————————9 一. 设计原理 计算机网络技术发展至今已经大大超越了人们当初的预想,无论是人们日常的工作还是学习,我们都越来越多的依靠到互联网。各种实时性的聊天娱乐软件也同时诞生,而且为我们的即时通讯带来了众多的方便,比如说大家所熟知的腾讯QQ、微软的MSN、中国移动的Fetion等,都是做的比较成功的实时聊天工具。随着网络的日益普及,各种聊天工具也层出不穷,但当我们学习了《网络编程》这门课程之后,我们便会觉得,其实要实现简单的网络通讯其实并不难。接下来的课程设计就是针对一个简单的网络聊天程序,利用MFC为开发工具,实现基本的通讯功能。 此程序主要分为两个模块:服务线程和聊天线程。服务线程用于提供一个网络端口,等待客户线程发出请求,登录到作为服务端的程序,然后进行网络通讯和消息的收发;客户端可通过服务器端的IP地址发送连接请求,然后建立连接,进行通讯。整个程序的主体使用了CSocket类的方法,实现了网络通讯聊天。 二.功能描述(需求分析) 1、一对一会话。此程序既可以作为服务器,也可以作为客户端。当发起聊 第二章Windows程序基础 在本学习情境中主要掌握: (1)Windows 程序结构 (2)Windows控件使用 2.1 Windows程序结构 2.1.1 WinMain函数 C语言中的main()函数一样,Windows程序是从WinMain()函数开始和结束的.WinMain()函数是在WINBASE.H中定义的,如图1所示。 图1 WinMain函数头文件 其原形如下: int WINAPI WinMain( HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd ) 其中第一个参数(HINSTANCE hInstance)是程序的实例句柄,这个实例句柄是程序的唯一标识. 第二个参数(HINSTANCE hPrevInstance)是用做检查是否有多个程序实例运行,但由于Windows9X和NT(包括更高版本)是32位操作系统,所以这个参数总是NULL.第三个参数(LPSTR lpCmdLine)是一个指向字符串的指针,用来保存运行程序时的命令行参数. 第四个参数(int nShowCmd)用来指定程序开始的时候如何显示. 2.1.2 窗口创建过程 第一步:定义并注册窗口类。 在Windows中要创建一个窗口首先要定义窗口类然后注册这个窗口类.定义窗口类要通过填充WNDCLASS结构体来完成,此结构体是在WINUSER.H中定义的,其原形如下:typedef struct tagWNDCLASSA { UNIT style; WNDPROC lpfnWndProc; 武汉科技大学机械自动化学院 2009.9 任务一开发一个计算器程序 1. 软件功能与目标 开发一个计算器软件,要求是基于对话框的应用程序,至少具有加、减、乘、除四个基本功能。在此基础上扩展平方、开方、三角函数等功能。 2. 具体要求 (1)使用Visual C++ 的MFC开发一个基于对话框的应用程序软件; (2)要有数据输入和结果显示窗口(或者数据的输入和显示共用一个窗口);(3)对话框字体采用“楷体”小四号字体; (4)窗口要有“最小化”按钮,同时屏蔽掉“最大化”按钮; (5)界面上设置一个按钮,点击后弹出一个消息窗口,显示软件开发者的姓名、班级、学号等信息,按钮位置自定; (6)要求界面美观、操作方便,风格自定。 3. 软件设计说明书撰写要求 软件设计说明书应按规定要求和格式撰写。 (1)软件目标:说明所开发软件的目标和具体功能; (2)软件设计:基于何种模式开发;基本操作流程;何种界面风格;软件功能模块等简要说明; (3)实现过程:根据照软件开发的过程按步骤分条叙述,界面上设置的控件应说明其控件ID号,主要属性,对应的变量名称与类型;自定义的函数、消息映射等应说明;实现过程中的主要代码应列出;(可参考上课所讲例题的流程) (4)软件界面:给出1~2幅软件最终界面截屏图片。 4. 软件提交存档 将最终软件源程序与可执行文件打包后统一提交至任课老师处。 任务二开发一个画图程序 1. 软件功能与目标 开发一个画图软件,要求是基于单文档或多文档的应用程序,能绘制点、直线、矩形、圆、椭圆等基本几何图形。在此基础上扩展多边形、扇形、贝赛尔曲线以及文字输出等功能。 2. 具体要求 (1)使用Visual C++ 的MFC开发一个基于单文档或多文档的应用程序软件;(2)(可选项)如果是多文档,要求具有切分窗口,其中一侧窗口为数据显示及输入窗口,另一侧窗口为图形显示窗口,且两个窗口的大小均能动态改变; (3)程序要能够绘制点、直线、矩形、圆、椭圆等基本几何图形; (4)既可以从菜单中点击子菜单项来绘制图形,也可以从对应的工具栏按钮中点击按钮进行绘制; (5)在状态栏中显示当前操作命令; (6)在程序“帮助”菜单的“About”对话框中用静态文本控件显示软件开发者的姓名、班级、学号等信息; (7)要求界面美观、操作方便,界面风格自定。 3. 软件设计说明书撰写要求 软件设计说明书应按规定要求和格式撰写。 (1)软件目标:说明所开发软件的目标和具体功能; (2)软件设计:基于何种模式开发;基本操作流程;何种界面风格;软件功能模块等简要说明; (3)实现过程:根据照软件开发的过程按步骤分条叙述,界面上设置的控件应说明其控件ID号,主要属性,对应的变量名称与类型;自定义的函数、消息映射等应说明;实现过程中的主要代码应列出;(可参考上课所讲例题的流程) (4)软件界面:给出1~2幅软件最终界面截屏图片。 4. 软件提交存档 将最终软件源程序与可执行文件打包后统一提交至任课老师处。 广州涉外2011-2012学年第二学期期末考试 VC 程序设计 试卷A 适用专业: 计算机应用技术 年级:2011级 考试形式:闭卷 考场要求:笔试 考试时间:120分钟 班级: 学号: 姓名: 评分: (试卷说明:请将答案填在答题纸内,否则不给分!) 一、选择题(本题共30小题,每题1分,共30分) 1、下列标识符中,合法的是(D )。 A 、4foots B 、main C 、val(7) D 、who_am_I 2、下列(B )是语句。 A 、 ;; B 、 a=17; C 、 x+y D 、 cout<<”\n ” 3、以下双目运算符中要求两个操作数均为整型的运算符是( D )。 A 、|| B 、&& C 、> D 、% 4、预处理命令在程序中都是以(B )为开头的。 A 、* B 、# C 、: D 、/ 5、下列for 循环的循环次数是(B )。 For(int i=0,x=0;!x&&i<=5;i++) A 、 5 B 、 6 C 、 1 D 、 无限 6、下述关于“for(e1; e2; e3)s1;”的描述中,不正确的是( B )。 A 、存在“for(; ;)s1;”的情况 B 、表达式e1和e3可为空,但e2不能为空 C 、表达式e2的值可增可减 D 、循环体s1可以为空,但分号(;)必须有 7、以下叙述中,不正确的是(C ) 。 A 、一个函数中可以有多个return 语句 B 、一个函数中可以没有return 语句 C 、一个return 语句可返回多个值 D 、一个return 语句可不返回值 8、已知:int a,b;下列switch 语句中,(D )是正确的。 装 订 线 《VC++程序设计》课程教学大纲 总学时:54 学分:3 理论学时:34 实验学时:20 面向专业:计算机科学与技术课程代码:2710015 先开课程:数据结构、C语言、面向对象程序设计课程性质:选修 执笔人:张磊审定人:陈龙猛、于仁师 第一部分:理论教学部分 一、说明 1、课程的性质、地位和任务 《VC++程序设计》最重要的任务是发展学生的智力,即编程、上机调试能力,具体到教学内容上则是重在使学生掌握理论教学中的重点和难点,对VC++语言的编程技巧能熟练掌握,提高自身的编程能力,加强素质教育。注重从事理论研究、实验工作的能力和严谨的科学作风的培养,提倡创新精神。 2、课程教学和教改基本要求 本课程主要讲解Visual C++6.0的语法结构、体系结构、各种组件,以及微软在Visual C++6.0中推出的各种新技术。通过本课程的学习,使学生熟悉采用面向对象编程语言进行Windows 可视化开发,掌握面向对象的编程思想,熟悉面向对象编程的消息响应。 本课程主要采用多媒体教室讲课,讲课与上机实验相结合,并辅以实际应用案例、常见问题分析等,巩固所学内容,基本要求如下: (1)掌握面向对象程序设计的基本概念 (2)熟悉Visual C++集成开发环境 (3)掌握Visual C++语言的基本内容、常用的算法 (4)理解WINDOWS的消息机制和WINDOWS应用程序的基本结构 (5)掌握MFC的基本概念,窗口、资源、图形设备接口、文档/视图结构、对话框和控件等对象的程序设计方法 (6)可用Visual C++开发基本的WINDOWS应用程序 二、教学内容与课时分配 第一章 Visual c++概述(学时数:1) 本章将重点介绍Visual c++的总体功能和特点,具体讲述Visual c++6.0版的安装过程,并详细介绍。 教学内容: 1、Visual c++开发环境、Visual c++向导、Visual c++应用程序环境。 2、Visual c++安装过程。 3、Visual c++菜单栏、Visual c++工具栏、Visual c++工作区、Visual c++资源编辑器。本章重点难点:Visual c++6.0版开发环境的熟悉 建议教学方法:先讲解主要知识点,再通过多媒体演示达到教学效果。 思考题 1、Visual c++的安装有什么要求? 2、Visual c++的帮助文件如何安装? 3、简单描述Visual c++开发环境? 第二章使用Visual c++创建控制台程序(学时数:2)本章主要通过一个具体实例——“Hello World”程序,演示Visual c++开发环境下建立一个控制台程序的完整过程。 教学内容: 1、创建“Hello world”程序的基本步骤。 2、创建控制台程序的输入、输出。 3、熟悉控制台程序句柄与I/O。 4、解析控制台程序窗口。 本章重点难点:Visual c++6.0版开发环境的熟悉 建议教学方法:先讲解主要知识点,再通过实例讲解进行巩固 思考题 1、如何控制自定义控制台程序的输入、输出? 2、如何读取控制台程序中的文字与背景? 3、如何在控制台窗口的指定部位写入指定的字符信息? MFC程序设计报告 一题目 运用相应的绘图函数,绘制正弦曲线。 二设计步骤 1 工程建立 只需按照应用程序的要求(如结构,特征和功能)选择相应的选项,AppWizard就可生成一系列符合要求的起始文件。然后,再起始文件的基础上进行开发,就可以了。 具体步骤如下: (1)在文件菜单中选择新建命令,进入新建对话框,在工程类型中选择:MFC AppWizard(exe)即MFC应用程序向导。 (2)在列表中选择MFC AppWizard(exe)项,并以下列方式填写其他选项; 在工程名框中填入03304321sin ; 在位置框中确定目录为E:\作业\C++\正弦曲线\03304321sin 作为工程根目录; 在列表框平台中默认为Win32检查框; 然后单击确认,并打开对话框Step1; (3) 在你喜爱的应用程序类型中选择单文档按钮;然后连续单击下一步按钮三次,接受默 认值 (4)在AppWizard的对话框Step 4 中,选择多选按钮MAPI support ,其余接受默认值。(5)单击完成,接受AppWizard的对话框中Step4,Step5 的设置。 (6)在New Project Information 对话框中,单击确认。 AppWizard创建并生成所有的必须文件,并在工作区窗口的ClassView视图中显示该工程。 2 类中新增变量的作用 在主框架类CMainFrame中,增加控制条成员变量CStatusBar m_wndStatusBar; CToolBar m_wndToolBar;分别应用与状态条和工具条。 在新增参数设置对话框CModelessDlg中增加视图类指针变量CView *m_pView,整型变量m_clength , m_cno, m_x, m_y,m_ymax,分别用于在视图类中显示内容,设置正弦曲线的周期长度,周期数,起始点的横坐标,纵坐标,以及y轴上的高。 在视图类CMy03304321sinView中增加变量crColor和变量m_thickness,分别用于表示正弦曲线的颜色和宽度。 增加全局变量CModelessDlg *dlg,用于指向新加入的对话框资源,实现对话框的生成和毁灭。 3 需处理的消息的详细代码 在视图类的实现文件中 void CMy03304321sinView::OnDraw(CDC* pDC) //正弦函数绘制 { CMy03304321sinDoc* pDoc = GetDocument(); ASSERT_V ALID(pDoc); // TODO: add draw code for native data here CPen Pen; Pen.CreatePen(PS_SOLID,m_thickness,crColor); //画笔 pDC->SelectObject(&Pen); 《VC++面向对象程序设计》课程设计任务书 一、课程设计目的 《VC++面向对象程序设计》是计算机相关专业的一门重要专业基础课。其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。VC++程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。通过课程设计,可以使学生更进一步地理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题,从而达到锻炼学生理论与实践相结合的能力。 本课程设计以设计综合性实验为主,培养学生灵活利用所学综合知识,提高程序设计的能力;同时,也培养学生利用C++语言进行编程和调试程序的能力,使学生能够具有编写较复杂程序的能力。通过此次课程设计,主要达到以下目的: 巩固和加深对VC++面向对象程序设计基本知识的理解,提高综合运用VC++理论的能力。 使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。 使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。 二、VC++课程设计要求 基本要求 1、每组2人完成课程设计。或者2人共同完成10-20题中任意1题)。其中,设计报告中要能体现明确分工,并每人完成不同的功能模块,对于关键代码或者关键模块不允许出现重复内容。 2、独立思考,独立完成课程设计。课程设计中各任务的设计和调试要求独立完成,遇到问题可以相互讨论,但不可以拷贝。 3、做好上机准备。每次上机实验之前,要事先编制好准备调试的程序,认真想好调试步骤和相关环境的设置方法,准备好有关文档。 4.按照课程设计的具体要求建立功能模块。对于具体模块要求按照如下几个方面内容认真完成: 需求分析: 在该部分描述清楚模块的具体功能。如果存在多个模块,则需要描述清楚每个模块的具体功能及相互之间的关联关系。 概要设计: 在此部分对模块的算法设计进行说明,每个程序中使用VC++程序设计练习题
VC++可视化程序设计入门
VC 程序设计
VC++程序设计说明书---计算器
(画图vc程序设计)
VC++程序设计大作业格式
VC++程序设计课内实验报告
vc程序设计英文
基于MFC的聊天程序设计
vc++Windows程序设计
VC程序设计任务书及标准封面
VC程序设计期末试卷A
Vc++程序设计课程教学大纲
MFC程序设计报告
《VC 面向对象程序设计》课程设计任务书