<FONT size=3> C/C++语言提供了十分丰富的图形函数,图形函数文件为Graphics.h,使用图形函数前须先将屏幕设置为图形模式,C/C++语言提供了下面的函数: 0 I, d( ?% h( } X1 _; T: O5 ~% w void far initgraph(int far *GD,int far *GM,char *P);; F1 P) N; H# k8 \/ s
, l; U2 C# ]- [7 \" Z; H 其中,GD和GM分别表示图形驱动程序和图形模式,P指图形驱动程序所在的目录路径。 ?* h' I4 b. y
9 m: z+ R# W9 r0 e( ]) {/ G, ~
图形驱动程序由Borland公司(对于Turbo C和Borland C++)提供,同时C/C++语言还提供了退出图形状态的函数closegraph(),格式为: 7 V q/ H: J! f* F% _/ o$ P# d, e void far closegraph(void); / Q6 V( L- n Y! i( k, [$ o N5 W/ a8 o3 U/ P
许你经常在用C/C++语言编写一些图形程序,但是总不能脱离C/C++语言环境独立运行,我们怎样来解决呢?下面是实现图形程序独立运行的具体步骤: # w" D: d- H$ Y& n6 [* D) i & Z# g5 h2 P. C& s% b$ g: L) A s" ] 1.将驱动程序EGAVGA.BGI转换成目标文件EGAVGA.OBJ: " j4 {& ^: q) o+ j C:\TC>BGIOBJ EGAVGA 0 @. [) A8 K( n: M' y: Y/ ` & N; n$ q. g9 |- h, x 按同样的办法,将字体文件*.CHR转换成目标文件*.OBJ:7 J9 F; m! Y6 G/ m
</FONT>0 r6 c$ P$ t+ A
6 a+ h4 w7 z) i! q; T ' r' J& o& w' |: ^, ]$ g<TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0># g/ p+ N' f8 D }
4 k. o' E* x5 f9 Y$ G5 x<TR>9 Q2 N0 V7 d3 p, |5 |4 }
<TD> C:\TC>BGIOBJ TRIP * ^1 X- Y# E J! f C:\TC>BGIOBJ LITT * _* h- W, V2 y( }0 k C:\TC>BGIOBJ SANS 4 t5 _- j5 `" o; |# Z- t* c9 I C:\TC>BGIOBJ GOTH</TD></TR></TABLE> ' k# i" |* P- e+ ]) F& r/ o* |<> 2.将上述建立的OBJ文件加入到GRAPHICS.LIB库文件中,具体方法如下:9 W3 C: ~' p& f. e2 ]$ y/ o
</P>4 q" v- A8 w4 E- k, H o6 |
<TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0> 8 G) ^$ Y) d) ` p* ~' q8 y$ m. t- t. S$ C2 y" `
<TR> ) D& w T- M! ]$ Z' E<TD> C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+EGAVGA! J% Z) o" l2 f" ~# g& e
C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+TRIP * v1 ^# Y$ g2 c0 I# R4 R C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+LITT 9 \: b7 T, b( f: N: E C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+SANS s3 v& W- ^; Y8 P C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+GOTH</TD></TR></TABLE> * ^6 q: N/ Z1 s8 ?! V* t<> 也可以使用TLIB、PRJ程序代替TLINK。* p- [* F0 E$ c5 Z5 f: i& {# h$ s
! e( b/ i. ~4 w' d, n: I
3.在程序中调用initgraph()函数前,应加上如下语句: 8 l8 s/ d3 V8 Y# ]7 P4 \ registerbgidriver(EGAVGA-driver); - q% z7 \3 v. t5 ^" g' N- ?( w & |# Y o) Z5 |! ~2 x3 G, J 它通知连接程序把EGAVGA驱动程序装入用户的执行程序中,同样在装入字体文件之前要加上如下语句: 2 y8 y3 r- {2 P" J# `/ [# [6 R registerbgifont(字体文件名);, \/ d) M( t) }# J% y% X% j9 b7 T" o
8 O7 C) g! Q4 r9 u" Y 4.通过上述处理后,编译连接后的执行程序就可以在任何目录下运行了。这时,将屏幕初始化为图形模式的函数可改写为: 6 {! _( T7 T, T% i% k' _</P> 7 u \6 T* w7 A. ]<TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0> 2 r! H+ n* d9 K! \; m+ o# A* f: v2 B" L8 `: i( h$ S4 e6 j
<TR> 6 U3 J k8 z8 `. \<TD> void InitGra(void)7 ^- A' j& z) R+ Z3 u4 P
{int GD=DETECT,GM; + E: W8 N! t0 o. f" E registerbgidriver(EGAVGA_driver); % q+ |9 Q! E7 J0 @, B registerbgifont(triplex_font); ; ^% D2 f% A* h4 ] registerbgifont(small_font); 3 e( B0 ^& z G6 p- R: _! m registerbgifont(sansserif_font); 3 A& |/ P; X: v1 f- D8 w registerbgifont(gothic_font);" k' l' ?2 a0 W$ L# M; e, o
initgraph(&GD,&GM,""); / |( b- w b9 ~* K8 T: K% ` }</TD></TR></TABLE> 8 {& s, B6 N: p7 N4 L; J) i. i<> 按照以上步骤,就能实现图形程序的独立运行</P>