GDI绘图类示例代码-CFont CPen CBrush
来源:互联网 发布:千牛卖家数据访客 编辑:程序博客网 时间:2024/06/05 16:11
事先定义枚举类型标示绘制类型:
enum {Fonts, Pens, Brushes} m_Display;
CFont类用法:
void CGDISampleView::ShowFonts(CDC* pDC)
{
LOGFONT logFont;//定义构建CFont对象的结构体
logFont.lfHeight = 8;
logFont.lfWidth = 0;
logFont.lfEscapement = 0;
logFont.lfOrientation = 0;
logFont.lfWeight = FW_NORMAL;
logFont.lfItalic = 0;
logFont.lfUnderline = 0;
logFont.lfStrikeOut = 0;
logFont.lfCharSet = ANSI_CHARSET;
logFont.lfOutPrecision = OUT_DEFAULT_PRECIS;
logFont.lfClipPrecision = CLIP_DEFAULT_PRECIS;
logFont.lfQuality = PROOF_QUALITY;
logFont.lfPitchAndFamily = VARIABLE_PITCH|FF_ROMAN;
strcpy(logFont.lfFaceName , "Times New Roman");
UINT position = 0;
for(UINT x = 0; x<8 ; ++x)
{
logFont.lfHeight = 16 +(x * 8);
CFont font;
font.CreateFontIndirect(&logFont);
CFont * oldFont = pDC ->SelectObject(&font);//存储旧的字体句柄
position += logFont.lfHeight;
pDC ->TextOut(20, position, "A Sample Font.");
pDC ->SelectObject(oldFont);//还原设备环境
}
}
CPen用法:
void CGDISampleView::ShowPens(CDC *pDC)
{
UINT position = 10;
INT32
for(UINT x=0; x<16; ++x)
{
CPen pen(PS_SOLID, x*2+1, RGB(0,0,255));
CPen* oldPen = pDC ->SelectObject(&pen);
position += x*2+10;
pDC ->MoveTo(20,position);
pDC ->LineTo(400,position);
pDC ->SelectObject(oldPen);
}
}
CBrush类用法:
void CGDISampleView::ShowBrushes(CDC *pDC)
{
UINT position = 0;
CPen pen(PS_SOLID, 5, RGB(255,0,255));
CPen* oldPen = pDC ->SelectObject(&pen);
for(UINT x=0; x<7; ++x)//x标识画刷的七种样式
{
CBrush *brush;
if(x == 6)
brush = new CBrush(RGB(0,255,0));
else
brush = new CBrush(x,RGB(0,160,0));//设置画刷样式
CBrush *oldBrush = pDC ->SelectObject(brush);
position += 50;
pDC ->Rectangle(20,position,400,position+40);
pDC ->SelectObject(oldBrush);
delete brush;
}
pDC ->SelectObject(oldPen);
}
- GDI绘图类示例代码-CFont CPen CBrush
- GDI绘图类示例代码-CFont CPen CBrush
- 图形设备接口类,GDI类:CPen, CBrush,CFont,CBitmap,CRgn,CPalette等
- C++/MFC-GDI主要对象(Bitmap、CBrush、CFont、CPalette、CPen和CRgn)
- CPen,CBrush,
- MFC学习笔记.day02续-CDC类,绘图区域,CPen画笔,画刷 CBrush,DC设备描述表
- C++/MFC-GDI绘图之CBrush画刷
- GDI画笔和CPen类
- [MFC]CPen画笔类、CBrush画刷类使用介绍
- CDC CClientDC CPen CBrush使用
- CPen和CBrush的使用
- MFC之CBrush和CPen
- GDI画刷和CBrush类
- [MFC]CPen画笔类、CBrush画刷类、背景颜色和背景模式
- CPen类
- CBrush类
- CPen类
- CPen类
- 从一个EXC_ARM_DA_ALIGN的crash来看ios3.2以后内存对齐问题
- 常见SQL语句
- 网站流量统计实现在原理
- MTK代码打包生成lib
- MFC常用数据类型介绍
- GDI绘图类示例代码-CFont CPen CBrush
- 浅谈Sql 死锁(Dead Lock)
- GDI绘图类示例代码-CFont CPen CBrush
- linux c 信号量编程
- Win32DLL编写与调用模板
- 第四军医大学唐都学院
- 合并排序(递归法)5
- MFC-DLL示例介绍
- Android交互对话框