中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 中文显示输出的问题 上一主题 | 下一主题
xuejin
初级用户




积分 106
发帖 1
注册 2004-6-28
状态 离线
『楼 主』:  中文显示输出的问题

各位大虾, 我有一个问题请教各位大虾,如何局部显示中文信息,不作全屏图形化的情况下局部显示中文提示信息,我写了一个全屏显示的程序程序,但不能满足我的项目要求,附上我的程序如下: #include #include #include #include #include #include #include #include #define ROW 2 #define COL 2 void main(void) { int x,y,keyx; char *tape="请把相应的磁带装入磁带机中作测试之用然后按任意键继续"; char *cd="请把测试光盘装入光驱中作测试之用然后按任意键继续"; char *fd="请随意插入一张软盘到软驱中作测试之用然后按任意键继续"; char *cyclops="请把白色的小回路插入面板上的独眼龙中作测试之用然后按任意键继续"; char *fpnllcd="请检查面板上的液晶屏显示是否正常字符是否正常有无错误记录按任意键后回答是或否"; char *cmdline=getenv("ITEST"; char *s="ABCD"; FILE *fp; char buffer[32]; register m,n,i,j,k; unsigned char qh,wh; unsigned long offset; int gd=DETECT,gm; registerbgidriver(EGAVGA_driver); initgraph(&gd,&gm,""; while(bioskey(1)!=0) { keyx=bioskey(0); if(isalnum(keyx & 0xFF)) printf("%c\n",keyx); else printf("%#02x\n",keyx); } if ((fp=fopen("hzk16","rb")==NULL) { printf("Can't open hzk16,Please add it"; getch(); closegraph(); exit(0); } x=20; y=100; if(strcmp(cmdline,"TAPE"==0) strcpy(s,tape); if(strcmp(cmdline,"CD"==0) strcpy(s,cd); if(strcmp(cmdline,"FD"==0) strcpy(s,fd); if(strcmp(cmdline,"CYCLOPS"==0) strcpy(s,cyclops); if(strcmp(cmdline,"FPNLLCD"==0) strcpy(s,fpnllcd); while(*s) { qh=*(s)-0xa0; wh=*(s+1)-0xa0; offset=(94*(qh-1)+(wh-1))*32L; fseek(fp,offset,SEEK_SET); fread(buffer,32,1,fp); for (i=0;i<16;i++) for(n=0;n<ROW;n++) for(j=0;j<2;j++) for(k=0;k<8;k++) for(m=0;m>(7-k))&0x1)!=NULL) putpixel(x+8*j*COL+k*COL+m,y+i*ROW+n,WHITE); s+=2; x+=30; if(x>540){ y+=100; x=20; } } beep: sound(800);delay(4000); if(!getch()) goto beep; nosound(); fclose(fp); closegraph(); } 哪位大虾能帮我看一看。 不知可否改成象Windows 编程里的对话框一样, 或象消息框一样。 谢谢!


2004-6-29 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: