zoukankan      html  css  js  c++  java
  • vc绘图工具、颜色和绘图函数

    1、画笔

    有两种形式创建画笔

    一是直接通过GetStockObject()函数来调用

    二是通过创建画笔来调用

     HPEN CreatePen(
      int
     fnPenStyle,    // pen style
      int nWidth,        // pen width
      COLORREF crColor   // pen color
    );
     

    创建画笔后必须调用SelectObject函数来将起选入设备环境;

    删除画笔可通过DeleteObject 函数来实现;

    2、画刷

    创建画刷

    一是通过GetStockObject函数来调用

    二是通过调用CreateSolidBrush 和CreateHatchBrush来创建画刷

    HBRUSH CreateSolidBrush(   COLORREF crColor   // brush color value );
    HBRUSH CreateHatchBrush(   int fnStyle,      // hatch style   COLORREF clrref   // color value ); 
    3、颜色
    通过RGB函数来实现;
    4、常用的绘图函数
    设置画笔当前的位置函数MoveToEx
    BOOL MoveToEx(   HDC hdc,          // handle to device context   int X,            // x-coordinate of new current position   int Y,            // y-coordinate of new current position   LPPOINT lpPoint   // pointer to old current position ); 
    从当前位置向指定坐标点画直线的函数LineTo
    BOOL LineTo(   HDC hdc,    // device context handle   int nXEnd,  // x-coordinate of line's ending point   int nYEnd   // y-coordinate of line's ending point );
     从当前位置开始,依次用线段连接lpPoints中指定各点的函数Polyline
    BOOL Polyline(   HDC hdc,            // handle to device context   CONST POINT *lppt,  // pointer to array containing endpoints   int cPoints         // number of points in the array ); 
    椭圆弧线Arc
    BOOL Arc(   HDC hdc,         // handle to device context   int nLeftRect,   // x-coord of bounding rectangle's upper-left corner   int nTopRect,    // y-coord of bounding rectangle's upper-left corner   int nRightRect,  // x-coord of bounding rectangle's lower-right corner   int nBottomRect, // y-coord of bounding rectangle's lower-right corner   int nXStartArc,  // first radial ending point   int nYStartArc,  // first radial ending point   int nXEndArc,    // second radial ending point   int nYEndArc     // second radial ending point ); 
    画一个饼图并用当前的画刷进行填充Pie
    BOOL Pie(   HDC hdc,         // handle to device context   int nLeftRect,   // x-coord of bounding rectangle's upper-left corner   int nTopRect,    // y-coord of bounding rectangle's upper-left corner   int nRightRect,  // x-coord of bounding rectangle's lower-right corner   int nBottomRect, // y-coord of bounding rectangle's lower-right corner   int nXRadial1,   // x-coord of first radial's endpoint   int nYRadial1,   // y-coord of first radial's endpoint   int nXRadial2,   // x-coord of second radial's endpoint   int nYRadial2    // y-coord of second radial's endpoint );  
    画一个矩形,并填充Rectangle
    BOOL Rectangle(   HDC hdc,         // handle to device context   int nLeftRect,   // x-coord of bounding rectangle's upper-left corner   int nTopRect,    // y-coord of bounding rectangle's upper-left corner   int nRightRect,  // x-coord of bounding rectangle's lower-right corner   int nBottomRect  // y-coord of bounding rectangle's lower-right corner ); 
    画一个椭圆并填充Ellipse
    BOOL Ellipse(   HDC hdc,        // handle to device context   int nLeftRect,  // x-coord of bounding rectangle's upper-left corner   int nTopRect,   // y-coord of bounding rectangle's upper-left corner   int nRightRect, // x-coord of bounding rectangle's lower-right corner   int nBottomRect // y-coord of bounding rectangle's lower-right corner ); 
    画一个多边形,并进行填充Polygon
    BOOL Polygon(   HDC hdc,                // handle to device context   CONST POINT *lpPoints,  // pointer to polygon's vertices   int nCount              // count of polygon's vertices ); 
    InvalidateRect 函数的作用是刷新用户区,(使区域无效)
  • 相关阅读:
    java:第三章
    java:第一章
    java:第二章
    复制a.jpg到b.jpg
    安卓事件大全
    安卓事件
    read输入流与writer输出流的对比
    第五章:循环结构
    第三章:选择结构(一)
    第二章:变量,数据类型和运算符
  • 原文地址:https://www.cnblogs.com/lidabo/p/2976259.html
Copyright © 2011-2022 走看看