• C语言图形界面常用函数集锦


    (以下函数均应在图形方式初始之后使用(initgraph(a,b)),在win-tc中使用BGI图形程序模板时,其中已经定义有一个initgr函数,在main函数中应在执行initgr函数之后再使用这些函数。使用这些函数时,均应在程序中包含头文件graphics.h,即程序开始时应有#include "graphics.h")

    1、setcolor(色彩值):设置绘图色彩,使用该函数后,图形函数所绘制的直线或曲线为该函数中指定的色彩。例如:

        setcolor(YELLOW);

        circle(320,240,100);

    在屏幕中央以黄色绘制半径为100的圆。

    2、setbkcolor(色彩值):设置图形屏幕的背景色彩,使用该函数后图形屏幕清屏,背景色彩为该函数中所指定的色彩。如果没有使用该函数设置背景色,则图形屏幕的背景色彩为黑色。

    3、cleardevice():清除图形屏幕上已经绘制的内容,该函数没有参数。

    4、line(x1,y1,x2,y2): 绘制直线段,其中(x1,y1)为一个端点的坐标,(x2,y2)为另一个端点的坐标。直线的色彩为在使用该函数之前通过setcolor函数所设置的色彩。例如:

        setcolor(WHITE);

        line(0,240,639,240);绘制一条横贯屏幕中间的白色水平直线。

    5、circle(x,y,r):绘制一个以(x,y)为圆心坐标,半径为r的圆。例如:

        setcolor(WHITE);

        circle(320,240,100);绘制一个以(320,240)为圆心位置,半径为100的圆。

    6、rectangle(x1,y1,x2,y2):绘制一个以(x1,y1)和(x2,y2)为对角端点坐标的矩形

    7、putpixel(x,y,color):在(x,y)坐标位置处绘制一个点,点的色彩由color指定。例如:

       putpixel(320,240,RED);在屏幕中央绘制一个红色的点。

    8、getbkcolor(): 取得当前图形屏幕的背景色彩,这个色彩值是使用setbkcolor函数设置的。例如:

        setcolor(getbkcolor());将绘图色彩设置为当前的背景色彩。

        这个语句执行之后,在原有的位置绘制相同的图形,则会将图形擦除。例如:

        setcolor(RED);

        circle(320,240,100);

        delay(10000);

        setcolor(getbkcolor());

        circle(320,240,100);

        这段代码首先使用红色绘制一个圆,在延时10000单位后(即保持这个图形一段时间后),再将其擦除。

    9、closegraph():关闭图形工作方式,返回到字符工作方式。调用此函数后,屏幕上已经绘制的图形将会被清除。

    10、ellipse(x,y,startangle,endangle,xradius,yradius):绘制一个椭圆形。椭圆的圆心位置为(x,y),startangle为开始角度,endangle为终止角度,xradius为椭圆横半径,yradius为椭圆纵半径。注意:这个函数使用的是角度值,而不是弧度值。例如:

         ellipse(320,240,0,360,200,100);
     

    11、sector(x,y,startangle,endangle,xradius,yradius):绘制一个扇形。扇形的圆心位置为(x,y),startangle为开始角度,endangle为终止角度,xradius为扇形横半径,yradius为扇形纵半径。注意:这个函数使用的是角度值,而不是弧度值。例如:

         sector(320,240,0,60,200,100);

  • 相关阅读:
    问题001:Java软件,属于系统软件还是应用软件呢?
    Apache.Tomcat 调用Servlet原理之Class类的反射机制,用orc类解释
    CharSquence 接口的作用,多态以增强String
    eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置<Servlet>
    tomcat.apache startup.bat闪退两种解决方法
    c++谭浩强教材教学练习例题1.2 求两数之和 为什么sum=a+b;sum的值为65538
    JSON格式自动解析遇到的调用方法问题.fromJson() ..readValue()
    shell command to replace UltraEdit
    根据内容最后一位进行排序
    利用left join 筛选B表中不包含A表记录
  • 原文地址:https://www.cnblogs.com/huke123/p/9086799.html
Copyright © 2020-2023  润新知