ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
``` void CCBrushDlg::OnPaint() { CPaintDC dc(this);//BeginPaint EndPaint CBrush b1(RGB(0,255,255)); //在构造函数中根据填充色创建画刷 CBrush* pBrh = dc.SelectObject(&b1); //选择画刷 CPen p1(PS_SOLID,4,RGB(255,0,0)); //在构造函数中创建一个画笔 CPen* pPen = dc.SelectObject(&p1); //选择画笔 dc.SelectStockObject(WHITE_BRUSH); //填充色 CRect rect(240,100,340,160); //CRect 类 矩形 CPoint pt1(340,20),pt2(300,200),pt3(20,20);//两个点 //dc.Chord(rect,pt1,pt2);//画闭合圆弧 //dc.SelectObject(pPen); //选择 //dc.MoveTo(pt1); //画线 //dc.LineTo(rect.CenterPoint()); //dc.LineTo(pt2); CPen p3; p3.CreatePen(PS_DASHDOTDOT,1,RGB(0,255,0));// 根据指定数值创建一个画笔 dc.SelectObject(&p3); //选择则画笔 CPoint ps[] ={CPoint(340,20),CPoint(220,90),CPoint(400,100)}; dc.Polygon(ps,sizeof(ps)/sizeof(ps[0]));//画一个多边形 CPen p4(PS_DASHDOTDOT,1,RGB(235,111,222));//在构造函数中创建一个画笔 dc.SelectObject(&p4);//选择p4画笔 CBrush b2(HS_DIAGCROSS,RGB(255,0,255));// 在构造函数中根据颜色和影线创建画刷 dc.SelectObject(&b2);//选择b2画刷 dc.Ellipse(240,170,340,230);//画椭圆 CBitmap bmp; //GDI对象 bmp.LoadBitmap(IDB_WOLF); //位图平铺 bpm格式的图片 CBrush b3(&bmp); // 在构造函数中根据平铺位图创建画刷 dc.SelectObject(&b3); CRect rect1(0,0,200,280); dc.RoundRect(rect1,pt3);//画一个弧形椭圆 dc.SelectObject(&p1); //选择p1画笔 CBrush b4; LOGBRUSH lb4 = {1}; //填充物为空 b4.CreateBrushIndirect(&lb4); //初始化一个画刷 dc.SelectObject(&b4); //选择画刷 CPoint ps3[] = {CPoint(45,10),CPoint(140,10),CPoint(160,80),CPoint(10,80)}; dc.Polygon(ps3,sizeof(ps3)/sizeof(ps3[0])); //画一个多边形 HBRUSH hBr = (HBRUSH)b3.GetSafeHandle();//获取句柄 GetSafeHandle() 基类句柄 CBrush* pBrush = CBrush::FromHandle(hBr);// FromHandle 将HBRUSH句柄转化为CBrush对象 b2.GetLogBrush(&lb4); //获取画刷的颜色和应县等属性信息 CBrush br5; br5.CreateSysColorBrush(COLOR_BTNFACE); dc.SelectObject(&br5); //选择画刷 dc.Ellipse(&rect); //画椭圆 } ```