资源描述:
《C语言课程设计-菜单设计-课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言课程设计-菜单设计-课程设计C语言课程设计-菜单设计
2、c语言程序代码编程小程序设计
3、c语言课程设计报告课程案例调试环境为TC2.0或?.0。运行这个程序需要tc提供的几个头文件。建议修改options菜单中的include目录项到tc的include的目录下(具体方法可以参见本书第一章的讲解);或者把源程序拷贝到tc目录下运行。#include#include#include#include#include4、ib.h>/*定义一些常数*/#defineNO0#defineYES1#defineNONE-1#defineMAX_MENU7/*根据情况改变可以在菜单显示的最大项*//*全局参数*/intX,Y;intSelection;intbutton,x,y;void*p;size_tarea;/*菜单结构*/structMENU{ /*左上角*/ intx; inty; /*右下角*/ intx1; inty1; unsignedcharA
5、ctive[MAX_MENU];/*菜单项是否激活的标志*/ char*head;/*菜单的名字(可选项)*/};intMouseOn(structMENU*t);voidProcess();voidXorbar(intsx,intsy,intex,intey,intc);voidShow();voidHide();voidStatus();/*通过下面的参数用户可以改变按钮的位置。*/structMENUFile={200,110,250,130};structMENUEdit={29
6、5,110,345,130};structMENUHelp={390,110,440,130};structMENUClose={600,10,620,30};structMENUNeeraj={380,300,460,315};voidmain(){ intgd=DETECT,gm; /*初始化图形界面*/ initgraph(&gd,&gm,""); Selection=NONE; /*是否激活菜单项,YES表示激活;NO表示取消激活*/ for(gd=0;gd7、) { File.Active[gd]=YES; Edit.Active[gd]=YES; Help.Active[gd]=YES; Close.Active[gd]=YES; } /*菜单项的名字,用户可以修改以显示其他的名称*/ File.head="[FileMenu]"; Edit.head="[EditMenu]"; Help.head="[HelpMenu]"; Close.head="[Exit]"; /*为界面分配内存*/ area=imagesize(0,0,150,150);
8、 p=malloc(area); /*没有足够的内存*/ if(p==NULL) { closegraph(); restorecrtmode(); printf("NotEnoughMemory!trytoreducetheareaused."); exit(1); } setfillstyle(1,7); bar(0,0,640,480); X=2;Y=2; /*绘制这个界面*/ Process(); End(); /*关闭图形显示方式*/ closegraph(); printf
9、("GUI-MENUSByNeerajSharma - n21@indiatimes.com"); getch();}voidProcess(){ /*文件菜单项的子菜单项*/ char*fm[]={"New","Open","Save","Saveas","Exit"}; /*编辑菜单项的子菜单项*/ char*em[]={"Undo","Cut","Copy","Paste","Delete","SelectAll"}; /*帮助菜单项的子菜单项*/ char*hm[]={"HelpT
10、opics","AboutMenus"}; /*如果用户在这里改变的了菜单项的值,那么也同样需要改变在函数 中的PullMenuDown(char*,int)值*/ charKEY; /*绘制各个菜单*/ Win(140,100,500,140); /*绘制文件菜单项*/ DrawBtn(&File,"File"); /*绘制编辑菜单项*/ DrawBtn(&Edit,"Edit"); /*绘制帮助菜单项*/ DrawBtn(&Help,"Help"); settextstyle(0,0,