资源描述:
《C及C++程序设计 教学课件 作者 张富 第十二章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第十二章屏幕控制12.1文本模式12.2图形模式12.3常用绘图函数12.4图形方式下输出文本12.1文本模式12.1.1文本窗口窗口是屏幕上的一个矩形区域。窗口的大小和数量都是可变的。最大的窗口等于整个屏幕。窗口也可小到只能容纳几个字符。整个屏幕可看作是窗口的缺省值。12.1.2建立窗口下面介绍几个与窗口相关的、常用的屏幕处理函数。(1)清窗口函数clrscr()(2)光标定位函数gotoxy()(3)清除至行尾函数clreol()(4)删除文本行函数delline()和插入文本行函数insline()12.1.3建立窗口函数window()上面
2、的两个例子使用的是缺省窗口。用window()函数可以在屏幕的任何位置建立任意尺寸的窗口。此函数的原形为:voidwindow(intleft,inttop,intright,intbottom);其中前两个参数(left和top)是窗口的左上角的坐标,后两个参数(right,和bottom)是窗口的右下角的坐标。12.1.4窗口I/O函数TurboC++的函数库中,有一些专门用于窗口的I/O函数。使用这些函数时,文本能自动在窗口边界处换行。表12.1.1列出了一些文本I/O函数。表12.1.1函数功能cprintf()格式化输出到活动窗口cput
3、s()将一字符串写到活动窗口putch()输出一字符到活动窗口getche()从控制台输入一个字符到活动窗口cgets()从控制台输入一个字符串到活动窗口表12.1.112.1.5文本的几种不同模式1.文本模式的设置到目前为止,我们使用的是缺省视频模式,即一般的25行80列的文本模式。2.文本颜色的设置配有彩色监视器和彩色图形视频适配器时,可用不同的颜色显示文本。函数textcolor()可以用来设置文本的前景颜色。这个函数也能使文本闪烁。textcolor()函数的原型为:voidtextcolor(intcolor);12.2图形模式12.2.
4、1初始化视频适配器图形模式设置函数为initgraph(),它的原型是:voidinitgraph(intfar*driver,intfar*mode,charfar*path);initgraph()函数的作用是装入一个图形驱动程序,用来初始化图形系统,并将系统设置成图形模式。12.2.2退出图形模式停止使用图形模式返回文本模式是用restorecrtmode()函数或closegraph()函数完成的。它们的原型为:voidfarrestorecrtmode(void);voidfarclosegraph(void);12.3常用绘图函数12.
5、3.1图形窗口—视区1.视区所有的图形函数都是对窗口进行操作的。图形窗口叫做视区。视区与文本窗口的区别,只是视区的左上角坐标是(0,0),而文本窗口左上角的坐标则是(1,1)。2.建立视区3.获取视区的尺寸视区的大小可用函数getviewsettings()得到。该函数的原形为:voidgetviewsettings(structviewporttypefar*info);参数viewporttype在头文件graphics.h中的定义如下:structviewporttype{intleft,top,right,bottom;intclipfla
6、g;}12.3.2基本图形函数1.画点、线、圆和矩形框的函数画点、线和圆的函数分别是putpixel(),line()和circle()。它们的原型为:voidfarputpixel(intx,inty,intcolor);voidfarline(intstartx,intstarty,intendx,intendy);voidfarcircle(intx,inty,intradius);voidfarrectangle(intleft,inttop,intright,intbottom);2.图形颜色的设置缺省绘图色为白色。可用函数set
7、color()设置当前的绘图颜色。此函数的原型为:voidfarsetcolor(intcolor);3.封闭图形的着色一个封闭的图形,可以用floodfill()函数涂上所希望的颜色。这个函数的原型为:voidfarfloodfill(intx,inty,intbordercolor);用函数setfillstyle()可以改变填充图形的模式。函数的原型为:voidfarsetfillstyle(intpattern,intcolor);12.4图形方式下输出文本12.4.1文本函数在图形方式下往屏幕上写字符,是通过一些库函数实现的。这里介绍两个
8、函数outtext()和outtextxy()。它们的原型为:voidfarouttext(charfar*textstr