免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: dddwwwzzz
打印 上一主题 下一主题

[SCO UNIX] 高手请进,关于终端显示的 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2003-09-04 13:56 |只看该作者

高手请进,关于终端显示的

如果是实达终端,那就没问题了。(事实上国内多数都用的是STAR终端)  把下面这段程序编译成ECHO 程序,然后:ECHO 内容 >;/dev/ttyxx  即可把信息发送到终端上了,会显示在屏幕的最上方。显示绝对不会乱,对打印的影响没有测试过。各位可以试试看。

echo.c

-------------------------------------------------------------------------------
#include "stdio.h"
#define ESC 27
#define DOT   0
#define CLR   1
#define DBT   2

P_box(x1,y1,x2,y2,fill_type)
int x1,y1,x2,y2,fill_type;
{
if(fill_type>; fill_type=8;
printf("%c!%d;%d;%d;%d;%de",ESC,x1,y1,x2,y2,fill_type);
}

set_stat(i)
int  i;
{
printf("%c!0;%d]",ESC,i);
}
set_init()
{
printf("%c[/1q",ESC);
printf("%c!0;0k",ESC);
}

mv_str(x,y,string)
int x,y;
unsigned char *string;
{
int i;
int len;

len=strlen(string);
for(i=0;i<len{
   if(string=='\007') {putchar(007);i++;continue;}
   if(string>;0&&string<127){
     printf("%c!%d;%d;%dw",ESC,x,y,string);
     i++;
     x+=8;
   }
   else{
     printf("%c!%d;%d;%d;%dw",ESC,x,y,string,string[i+1]);
     i+=2;
     x+=16;
   }
}
}

main(argc,argv)
int argc;
char *argv[];
{
if(argc<2) exit(0);
set_init();
set_stat(CLR);
P_box(0,0,630,12,5);
set_stat(DBT);
mv_str(0,0,argv[1]);
exit(0);
}
-------------------------------------------------------------------
结束。

论坛徽章:
0
12 [报告]
发表于 2003-09-04 13:57 |只看该作者

高手请进,关于终端显示的

那个脸是 8  )

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
13 [报告]
发表于 2003-09-04 14:47 |只看该作者

高手请进,关于终端显示的

楼上的方法试过了,在实达终端好用 ;)

论坛徽章:
0
14 [报告]
发表于 2003-09-04 16:26 |只看该作者

高手请进,关于终端显示的

好东西,不知是否支持实达的全系列终端,还有新大陆、国光的终端

论坛徽章:
0
15 [报告]
发表于 2003-09-04 16:38 |只看该作者

高手请进,关于终端显示的

不错不错!

论坛徽章:
0
16 [报告]
发表于 2003-09-04 17:29 |只看该作者

高手请进,关于终端显示的

哥们,再给说说怎么消除啊!

论坛徽章:
0
17 [报告]
发表于 2003-09-04 17:54 |只看该作者

高手请进,关于终端显示的

这个程序肯定会影响打印的

论坛徽章:
0
18 [报告]
发表于 2003-09-04 23:53 |只看该作者

高手请进,关于终端显示的

实达的终端都好用,国光的要做适当修改。要清除的话再发些空格键过去好了,或者把终端的显示设置改为:图形清行即可。

论坛徽章:
0
19 [报告]
发表于 2003-09-05 00:40 |只看该作者

高手请进,关于终端显示的

帮顶一下吧!

论坛徽章:
0
20 [报告]
发表于 2003-09-05 10:54 |只看该作者

高手请进,关于终端显示的

dlj53u  ,我用空格填只能消除上半行的信息啊。应该怎么做?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP