【VC++中的2函数】 GetDlgItem(); //由ID得到指向CWnd的指针 GetDlgCtrlID(); //CWnd指针得到它的ID 【特别的画线函数】 LineDDA() 【得到现在画笔或画刷的位置】 GetCurrentPosition() SetROP2() //设置绘图模式 SetBkMode(HDC,INT) //OPAQUE,TRANSPARENT(透明) SetBkColor() GetBkMode() GetBkColor() LintTo() // 不包括最后一个点 Rectangle() //边界不包括坐标所在的线。其他绘图函数也是这样的 RoundRect() // 边角是圆的 【多边型函数】有2个:Polygon() 和PolyPolygon() 这两个具体怎么填充由填充方式决定(用SetPolyFillMode()来设定):ALTERNATE和 WINDING。 ALTERNATE:(为缺省填充模式):只填充那些重叠了奇数次的区域(区域至少有一边和外界相邻) WINDING:填充所有的封闭区域 (我认为上面的说法一定的错误,上面的来自蔡明志的《Windows程序设计,绘图篇》-使用BCB 第4章图形的绘制,Window程序设计上不是这样说的) 【画刷】 1 CreateSolidBrush() //单一 的一种颜色 8*8的位图像 2 CreateHatchBrush() //花纹种类的画刷 3 CreatePatternBrush() //一个8*8的位图像,又LoadBitmap装入,也可以是CreateBitmap() 或CreateBitmapIndirect() 或CreateCompatible() 创建, 4 CreateDIBPatternBrush(hPackedDIB,wUsage); hPackedDIB 是GLOBALHANDLE型的变量, 是GlobalAlloc配置的一块内存,wUsage决定位图的颜色表是用调色板索引值还是采用实际的索引值。 5 CreateBrushIndirect(lpLogBrush);用法和CreatePenIndirect() 一样 【区域Region】 CreateRectRgn()/CreateEllipseRgn()/CreateRectRgnIndirect()/CreateEllipseRgnIndirect()/CreateRoundRectRgn()/CreatePolygonRgn()/CreatePolyPolygonRgn()/ 组合:CombineRgn() 【调色板】 CreatePalette();/SelectPalette()/RealizePalette()/然后通过索引来使用就行了PALETTEINDEX() /PALETTERGB():选相近的颜色值
乱七八糟的Windows API笔记
最新推荐文章于 2024-09-25 14:20:40 发布