资源描述:
《unix环境下非图形终端上的通用下拉弹出式菜单工》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、UNIX环境下非图形终端上的通用下拉弹出式菜单工摘要该文在AIXV3.2.5环境下,利用C语言的指针机制,开发出了非图形终端(HT-382)上通用下拉弹出式菜单工具。一、问题的提出随着计算机在社会生产、生活各部门的广泛应用和高档微机、小型机的不断出台,高性能UNIX/XENIX多用户、多任务操作系统正在逐步取代原有单用户的DOS系统。这就迫切需要在新环境下开发出大批功能齐全的应用软件工具,以取代DOS环境下的各种应用软件,从而满足用户新的要求。以往的菜单工具虽各有其特点,但均是在DOS环境下开发的,都借助于enu()实现对该链表网的应用。详见程序清单和text文件示例。(
2、1)下拉弹出式菜单程序清单(以e[20],subtitl[30],mbegin,mend;inttlin,tcol,subhigh,sub,*parem,*paret;ain()/*主函数*/{structlink*creat();voidmenu();charfname[10],tname[30];intain.txt","r"))==NULL){exit(0);}fscanf(fp1,"%s%d%d%s%d%d%d%d%s",fname,tlin,tcol,tname,hi,p;li,co,tree);free(fp1);initscr();cbreak();mh
3、ead=creat(fname,NULL,NULL);/*创建双向循环链表网*/menu(mhead,NULL,tlin,tcol,tname,hi,wi,li,co);/*操纵双向循环链表网*/endwin();exit(0);}/*操纵菜单函数*/voidmenu(head,parevend!='T';)/*菜单显示*/{p->pend!='T';){mvvvp(stout>prname,"exit")==0){p(stout>prname,"null.exe")!=0){(stout>prname);!=NULL)/*递归调用*/{enu(s
4、tout>subm,;enu,paremenu,pareitem)charsubmenu[10];structlink*paremenu;structlink*pareitem;{intn;structlinkmenu1;structlink*head;structlink*p1,*p2;FILE*fp;charsubname[60];strcpy(subname,NULL);strcpy(subname,tree);strcat(subname,submenu);if((fp=fopen(subname,"r"))==NULL){exit(0);}head=NUL
5、L;n=1;for(;!feof(fp);){fscanf(fp,"%s%d%d%s%d%d%s%d%d%d%d%s",menu1.str,menu1.lin,menu1.col,menu1.subp,menu1.tlin,menu1.tcol,menu1.subtitl,menu1.subhigh,menu1.subp;menu1.sublin,menu1.subcol,menu1.prname);if(n==1){p1=p2=(structlink*)malloc(LEN);head=p1;head>mbegin='T';head>mend='F';s
6、trcpy(head>str,menu1.str);strcpy(head>subp,menu1.subp);strcpy(head>prname,menu1.prname);strcpy(head>subtitl,menu1.subtitl);head>lin=menu1.lin;head>col=menu1.col;head>tlin=menu1.tlin;head>tcol=menu1.tcol;head>subhigh=menu1.subhigh;head>;subenu1.subenu1.sublin;
7、head>subcol=menu1.subcol;head>p=NULL;head>parem=paremenu;head>paret=pareitem;if(strcmp(p1->subp,"null.txt"))head>subm=creat(head>subp,head,p1);}else{p1=(structlink*)malloc(LEN);p2->next=p1;p1->befo=p2;p1->mbegin='F';p1->mend='F';strc