• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

让C/C++图形程序独立运行

发布: 2007-7-01 20:40 | 作者: admin | 来源: | 查看: 13次 | 进入软件测试论坛讨论

领测软件测试网

  C/C++语言提供了十分丰富的图形函数,图形函数文件为Graphics.h,使用图形函数前须先将屏幕设置为图形模式,C/C++语言提供了下面的函数:
  void far initgraph(int far *GD,int far *GM,char *P);

  其中,GD和GM分别表示图形驱动程序和图形模式,P指图形驱动程序所在的目录路径。

  图形驱动程序由Borland公司(对于Turbo C和Borland C++)提供,同时C/C++语言还提供了退出图形状态的函数closegraph(),格式为:
  void far closegraph(void);

  许你经常在用C/C++语言编写一些图形程序,但是总不能脱离C/C++语言环境独立运行,我们怎样来解决呢?下面是实现图形程序独立运行的具体步骤:

  1.将驱动程序EGAVGA.BGI转换成目标文件EGAVGA.OBJ:
  C:\TC>BGIOBJ EGAVGA

  按同样的办法,将字体文件*.CHR转换成目标文件*.OBJ:

  C:\TC>BGIOBJ TRIP
  C:\TC>BGIOBJ LITT
  C:\TC>BGIOBJ SANS
  C:\TC>BGIOBJ GOTH

  2.将上述建立的OBJ文件加入到GRAPHICS.LIB库文件中,具体方法如下:

  C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+EGAVGA
  C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+TRIP
  C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+LITT
  C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+SANS
  C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+GOTH

  也可以使用TLIB、PRJ程序代替TLINK。

  3.在程序中调用initgraph()函数前,应加上如下语句:
  registerbgidriver(EGAVGA-driver);

  它通知连接程序把EGAVGA驱动程序装入用户的执行程序中,同样在装入字体文件之前要加上如下语句:
  registerbgifont(字体文件名);

  4.通过上述处理后,编译连接后的执行程序就可以在任何目录下运行了。这时,将屏幕初始化为图形模式的函数可改写为:

  void InitGra(void)
  {int GD=DETECT,GM;
  registerbgidriver(EGAVGA_driver);
  registerbgifont(triplex_font);
  registerbgifont(small_font);
  registerbgifont(sansserif_font);
  registerbgifont(gothic_font);
  initgraph(&GD,&GM,"");
  }

  按照以上步骤,就能实现图形程序的独立运行


文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网