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

王朝c/c++·作者佚名  2006-01-06
窄屏简体版  字體: |||超大  

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,"");

}

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

更多内容请看C/C++技术专题 C/C++进阶技术文档专题,或

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航