第26周-window程序设计(基础篇)-第5章(图形基础)-使用现有画笔Stock Pens

来源:互联网 发布:山东大学远程网络教育 编辑:程序博客网 时间:2024/06/06 07:06

1、使用现有画笔Stock Pens:

/*使用现有画笔Stock Pens*/HPEN hPen;hPen = GetStockObject(WHITE_PEN); //获得现有画笔的句柄SelectObject(hdc,hPen); //将画笔选进设备内容将上述合并成:SelectObject (hdc, GetStockObject (WHITE_PEN)) ;使用BLACK_PENSelectObject (hdc, GetStockObject (BLACK_PEN)) ;/*SelectObject的传回值是此呼叫前设备内容中的画笔句柄。如果启动一个新的设备内容并呼叫*/hPen = SelectObject (hdc, GetStockobject (WHITE_PEN)) ;/*则设备内容中的目前画笔将为WHITE_PEN,变量hPen将会是BLACK_PEN的句柄。以后通过呼叫下面函数,就能够将BLACK_PEN选进设备内容。*/SelectObject (hdc, hPen) ;

2、画笔的建立选择和删除:

/*画笔的建立、选择和删除使用函数CreatePen或CreateIndirect建立一个[逻辑画笔];(两者都不需要设备内容句柄作为参数)呼叫SelectObject将画笔选进设备内容;删除用DeleteObject;*//*六大[GDI对象]:是逻辑画笔、画刷、位图、区域、字体和调色盘,除调色盘外,都通过SelectObject选进设备内容。三原则:1、最后要删除自己建立的所有GDI对象。2、当GDI对象正在一个有效的设备内容中使用时,不要删除它。3、不要删除现有对象。*//*CreatePen函数*/hPen = CreatPen(iPenStyle,iWidth,crcolor);其中iPenStyle参数确定画笔是实线、点线还是虚线;WINGDI.H的每种画笔样式标识符PS_SOLID   直线PS_DASH    虚线PS_DOT     点线组合PS_DASHDOT 虚线和点的组合PS_DASHDOTDOT 虚线点点组合PS_NULL       无PS_INSIDEFRAME  直线或内框 ?  //唯一一种可以使用混色的画笔样式,且需宽度大于1时才这样。整条边界框线都画在边界框之内。/*使用CreatePenIndirect需定义一个LOGPEN型态结构*/LOGPEN logpen;三个成员:lopnStype(UINT)、lopnWidth(POINT结构)、lopnColor(COLORREF)/*将结构地址传给CreatePenIndirect,即可建立画笔*/hPen = CreatePenIndirect(&logpen);/*建立、选择和删除画笔的方法*/static HPEN hPen1,hPen2,hPen3;hPen1 = CreatePen(PS_SOLID,1,0);hPen2 = CreatePen(PS_SOLID,3,RGB(255,0,0));hPen3 = CreatePen(PS_DOT,0,0);将画线函数选进设备内容:SelectObject(hdc,hPen2);SelectObject(hdc,hPen1);删除三种画笔:DeleteObject (hPen1) ;DeleteObject (hPen2) ;DeleteObject (hPen3) ;随时建立画笔,并将CreatePen和SelectObject呼叫组合SelectObject(hdc,CreatePen(PS_DASH,0,RGB(255,0,0)));以通过呼叫SelectObject将BLACK_PEN选进设备内容,并删除从SelectObject传回的值:DeleteObject(SelectObject(hdc,GetStockObject(BLACK_PEN)));新建立的画笔选进设备内容时,保存SelectObject传回的画笔句柄:hPen = SelectObject(hdc,CreatePen(PS_DASH,0,RGB(255,0,0)));将hPen选进设备内容,并删除所建立的画笔DeleteObject(SelectObject(hdc,hPen));如果有一个画笔的句柄,就可以通过呼叫GetObject取得LOGPEN结构各个成员的值:GetObject(hPen,sizeof(LOGPEN),LPVOID)&logpen);目前选进设备内容的画笔句柄hPen = GetCurrentObject(hdc,OBJ_PEN);

0 0
原创粉丝点击