?? g.htm
字號:
lname[lineinfo.linestyle]);
sprintf(lpattern, "0x%X is the user-defined line pattern.",
lineinfo.upattern);
sprintf(lwidth, "%d is the line thickness.",
lineinfo.thickness); </PRE>
<PRE>/* display the information */
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, lstyle);
outtextxy(midx, midy+2*textheight("W"), lpattern);
outtextxy(midx, midy+4*textheight("W"), lwidth); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getmaxcolor</font>
功 能: 返回可以傳給函數setcolor的最大顏色值
用 法: int far getmaxcolor(void);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
char colstr[80]; </PRE>
<PRE>/* initialize graphics and local variables
*/ initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
} </PRE>
<PRE>midx = getmaxx() / 2;
midy = getmaxy() / 2; </PRE>
<PRE>/* grab the color info. and convert it to a string */
sprintf(colstr, "This mode supports colors 0..%d", getmaxcolor()); </PRE>
<PRE>/* display the information */
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, colstr); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getmaxx </font>
功 能: 返回屏幕的最大x坐標
用 法: int far getmaxx(void);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
char xrange[80], yrange[80]; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
} </PRE>
<PRE>midx = getmaxx() / 2;
midy = getmaxy() / 2; </PRE>
<PRE>/* convert max resolution values into strings */
sprintf(xrange, "X values range from 0..%d", getmaxx());
sprintf(yrange, "Y values range from 0..%d", getmaxy()); </PRE>
<PRE>/* display the information */
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, xrange);
outtextxy(midx, midy+textheight("W"), yrange); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名:<font size="5" color="#FF0000"> getmaxy </font>
功 能: 返回屏幕的最大y坐標
用 法: int far getmaxy(void);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
char xrange[80], yrange[80]; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
} </PRE>
<PRE>midx = getmaxx() / 2;
midy = getmaxy() / 2; </PRE>
<PRE>/* convert max resolution values into strings */
sprintf(xrange, "X values range from 0..%d", getmaxx());
sprintf(yrange, "Y values range from 0..%d", getmaxy()); </PRE>
<PRE>/* display the information */
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, xrange);
outtextxy(midx, midy+textheight("W"), yrange); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getmodename</font>
功 能: 返回含有指定圖形模式名的字符串指針
用 法: char *far getmodename(int mode_name);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>int main(void)
{
/* request autodetection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy, mode;
char numname[80], modename[80]; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
} </PRE>
<PRE>midx = getmaxx() / 2;
midy = getmaxy() / 2; </PRE>
<PRE>/* get mode number and name strings */
mode = getgraphmode();
sprintf(numname, "%d is the current mode number.", mode);
sprintf(modename, "%s is the current graphics mode.", getmodename(mode)); </PRE>
<PRE>/* display the information */
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, numname);
outtextxy(midx, midy+2*textheight("W"), modename); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getmoderange </font>
功 能: 取給定圖形驅動程序的模式范圍
用 法: void far getmoderange(int graphdriver, int far *lomode,
int far *himode);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
int low, high;
char mrange[80]; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
} </PRE>
<PRE>midx = getmaxx() / 2;
midy = getmaxy() / 2; </PRE>
<PRE>/* get the mode range for this driver */
getmoderange(gdriver, &low, &high); </PRE>
<PRE>/* convert mode range info. into strings */
sprintf(mrange, "This driver supports modes %d..%d", low, high); </PRE>
<PRE>/* display the information */
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, mrange); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getpalette</font>
功 能: 返回有關當前調色板的信息
用 法: void far getpalette(struct palettetype far *palette);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
struct palettetype pal;
char psize[80], pval[20];
int i, ht;
int y = 10; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
/* an error occurred */
if (errorcode != grOk)
{
printf("Graphics error: %s\n",
grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
/* terminate with an error code */
exit(1);
} </PRE>
<PRE>/* grab a copy of the palette */
getpalette(&pal); </PRE>
<PRE>/* convert palette info. into strings */
sprintf(psize, "The palette has %d \
modifiable entries.", pal.size); </PRE>
<PRE>/* display the information */
outtextxy(0, y, psize);
if (pal.size != 0)
{
ht = textheight("W");
y += 2*ht;
outtextxy(0, y, "Here are the current \
values:");
y += 2*ht;
for (i=0; i {
sprintf(pval,
"palette[%02d]: 0x%02X", i,
pal.colors[i]);
outtextxy(0, y, pval);
}
} </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getpass </font>
功 能: 讀一個口令
用 法: char *getpass(char *prompt);
程序例: </PRE>
<PRE>#include </PRE>
<PRE>int main(void)
{
char *password; </PRE>
<PRE>password = getpass("Input a password:");
cprintf("The password is: %s\r\n",
password);
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getpixel</font>
功 能: 取得指定像素的顏色
用 法: int far getpixel(int x, int y);
程序例: </PRE>
<PRE>#include
#include
#include
#include
#include </PRE>
<PRE>#define PIXEL_COUNT 1000
#define DELAY_TIME 100 /* in milliseconds */ </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
int i, x, y, color, maxx, maxy,
maxcolor, seed; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
/* an error occurred */
if (errorcode != grOk)
{
printf("Graphics error: %s\n",
grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
/* terminate with an error code */
exit(1);
} </PRE>
<PRE>maxx = getmaxx() + 1;
maxy = getmaxy() + 1;
maxcolor = getmaxcolor() + 1; </PRE>
<PRE>while (!kbhit())
{
/* seed the random number generator */
seed = random(32767);
srand(seed);
for (i=0; i {
x = random(maxx);
y = random(maxy);
color = random(maxcolor);
putpixel(x, y, color);
} </PRE>
<PRE>delay(DELAY_TIME);
srand(seed);
for (i=0; i {
x = random(maxx);
y = random(maxy);
color = random(maxcolor);
if (color == getpixel) </PRE>
<PRE>函數名: <font size="5" color="#FF0000">gets </font>
功 能: 從流中取一字符串
用 法: char *gets(char *string);
程序例: </PRE>
<PRE>#include </PRE>
<PRE>int main(void)
{
char string[80]; </PRE>
<PRE>printf("Input a string:");
gets(string);
printf("The string input was: %s\n",
string);
return 0;
}
</PRE>
<PRE>函數名:<font size="5" color="#FF0000"> gettext </font>
功 能: 將文本方式屏幕上的文本拷貝到存儲區(qū)
用 法: int gettext(int left, int top, int right, int bottom, void *destin);
程序例: </PRE>
<PRE>#include </PRE>
<PRE>char buffer[4096]; </PRE>
<PRE>int main(void)
{
int i;
clrscr();
for (i = 0; i <= 20; i++)
cprintf("Line #%d\r\n", i);
gettext(1, 1, 80, 25, buffer);
gotoxy(1, 25);
cprintf("Press any key to clear screen...");
getch();
clrscr();
gotoxy(1, 25);
cprintf("Press any key to restore screen...");
getch();
puttext(1, 1, 80, 25, buffer);
gotoxy(1, 25);
cprintf("Press any key to quit...");
getch();
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">gettextinfo </font>
功 能: 取得文本模式的顯示信息
用 法: void gettextinfo(struct text_info *inforec);
程序例: </PRE>
<PRE>#include </PRE>
<PRE>int main(void)
{
struct text_info ti;
gettextinfo(&ti);
cprintf("window left %2d\r\n",ti.winleft);
cprintf("window top %2d\r\n",ti.wintop);
cprintf("window right %2d\r\n",ti.winright);
cprintf("window bottom %2d\r\n",ti.winbottom);
cprintf("attribute %2d\r\n",ti.attribute);
cprintf("normal attribute %2d\r\n",ti.normattr);
cprintf("current mode %2d\r\n",ti.currmode);
cprintf("screen height %2d\r\n",ti.screenheight);
cprintf("screen width %2d\r\n",ti.screenwidth);
cprintf("current x %2d\r\n",ti.curx);
cprintf("current y %2d\r\n",ti.cury);
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">gettextsettings </font>
功 能: 返回有關當前圖形文本字體的信息
用 法: void far gettextsettings(struct textsettingstype far *textinfo);
程序例: </PRE>
<PRE>#include
#include
#include
#include </PRE>
<PRE>/* the names of the fonts supported */
char *font[] = { "DEFAULT_FONT",
"TRIPLEX_FONT",
"SMALL_FONT",
"SANS_SERIF_FONT",
"GOTHIC_FONT"
}; </PRE>
<PRE>/* the names of the text directions supported */
char *dir[] = { "HORIZ_DIR", "VERT_DIR" }; </PRE>
<PRE>/* horizontal text justifications supported */
char *hjust[] = { "LEFT_TEXT", "CENTER_TEXT", "RIGHT_TEXT" }; </PRE>
<PRE>/* vertical text justifications supported */
char *vjust[] = { "BOTTOM_TEXT", "CENTER_TEXT", "TOP_TEXT" }; </PRE>
<PRE>int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
struct textsettingstype textinfo;
int midx, midy, ht;
char fontstr[80], dirstr[80], sizestr[80];
char hjuststr[80], vjuststr[80]; </PRE>
<PRE>/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, ""); </PRE>
<PRE>/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
} </PRE>
<PRE>midx = getmaxx() / 2;
midy = getmaxy() / 2; </PRE>
<PRE>/* get information about current text settings */
gettextsettings(&textinfo); </PRE>
<PRE>/* convert text information into strings */
sprintf(fontstr, "%s is the text style.", font[textinfo.font]);
sprintf(dirstr, "%s is the text direction.", dir[textinfo.direction]);
sprintf(sizestr, "%d is the text size.", textinfo.charsize);
sprintf(hjuststr, "%s is the horizontal justification.",
hjust[textinfo.horiz]);
sprintf(vjuststr, "%s is the vertical justification.",
vjust[textinfo.vert]); </PRE>
<PRE>/* display the information */
ht = textheight("W");
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(midx, midy, fontstr);
outtextxy(midx, midy+2*ht, dirstr);
outtextxy(midx, midy+4*ht, sizestr);
outtextxy(midx, midy+6*ht, hjuststr);
outtextxy(midx, midy+8*ht, vjuststr); </PRE>
<PRE>/* clean up */
getch();
closegraph();
return 0;
}
</PRE>
<PRE>函數名:<font size="5" color="#FF0000"> gettime </font>
功 能: 取得系統(tǒng)時間
用 法: void gettime(struct time *timep);
程序例: </PRE>
<PRE>#include
#include </PRE>
<PRE>int main(void)
{
struct time t; </PRE>
<PRE>gettime(&t);
printf("The current time is: %2d:%02d:%02d.%02d\n",
t.ti_hour, t.ti_min, t.ti_sec, t.ti_hund);
return 0;
}
</PRE>
<PRE>函數名: <font size="5" color="#FF0000">getvect </font>
功 能: 取得中斷向量入口
用 法: void interrupt(*getvect(int intr_num));
程序例: </PRE>
<PRE>#include
#include </PRE>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -