c语言综合编程训练,C语言综合编程训练.ppt

C语言综合编程训练.ppt

将指定模式的驱动程序 *.GBI 从当前路径下调入内存 关闭图形系统回到文本 模式 鼠标系统实际上由两个主要元素组成 鼠标机制和称作鼠标驱动程序的内存驻 留程序。鼠标驱动程序提供与鼠标通信 所需的全部低级支持。此外,它自动维 持鼠标光标位置和发现是否按下了某个 键。一旦装入驱动程序,鼠标就可以被 随后执行的任意程序使用。 InitMouse union REGS regs; regs.x.ax0; int860 x33, ifregs.x.ax0 return false; else return true; HideCur union REGS regs; ifvisual regs.x.ax2; int860 x33, visualfalse; ShowCur union REGS regs; ifvisual regs.x.ax1; int860 x33, visualtrue; Status union REGS regs; regs.x.ax3; int860 x33, xregs.x.cx; yregs.x.dx; statusregs.x.bx; void MoveMouseint x,int y REGS regs; regs.x.ax4; regs.x.cxx; regs.x.dxy; int860 x33, 设置鼠标光标需要三个方面信息 鼠标的外边界8*8点阵,16个整数 鼠标的内部形状8*8点阵,16个整数 以及鼠标的热点的相对坐标int x,y 其中外边界和内边界连续存放,为长度 为32的整型数组 int marks32 SetCursunsigned masks32,x,y union REGS regs; struct SREGS sregs; regs.x.ax9; regs.x.bxx; regs.x.cxy;/* hot spot*/ regs.x.dxunsignedmasks; segread int860 x33, 程序中可直接使用UCDOS中的HZK16, ASC16和HZK24三个文件。 HZK16中存储的是16*16点阵汉字是按行 存储的以便于显示,每个汉字字模 32BYTE,按照国标码顺序存储,其中也 包含了682个纯中文符号字母。 ASC16存储256个西文ASCII码的8*16点阵 格式,按行存储,每个ASCII码16字节。 HZK24X存储24*24点阵打印字模,按列存 储,每个汉字字模占576字节。24*24点 阵汉字存储两比较大,所以从16区1位“ 啊”字开始存储,以减少字库大小。其 中X为KS表示楷体,宋体等。 int getbitunsigned char byte,int bit ifbit7 return 0; return bytebit 函数getbit用于得出一个字节中每个位( bit)是0还是1。 void PutChn24x,y,char *by,color int i1,i2,i3; fori10;i124;i1 LINES fori20;i23;i2 3 bytes per line fori30;i38;i3 fgetbitbyi1*3i2,7-i3 putpixelxi1,yi2*8i3,color; void PutChn16x,y,char* buf,color int i1,i2,i3; fori10;i116;i1 fori20;i22;i2 fori30;i38;i3 ifgetbitbufi1*2i2,7-i3 putpixelxi2*8i3,yi1,color; qu c1 - 0 xa1; wei c2 - 0 xa1; 通过计算个计算出该区位码在汉字库中的 偏移量lenth 32 long offsetqu * 94 wei * long lenth; 24*24点阵汉字字模的读取类似,只是其偏 移量计算稍有不同lenth72 long offsetqu-15* 94 wei* long lenth;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值