关于GDI+的一些使用基础设置
一、新建一个MFC的单文档工程,例如工程名字叫GDIPLUSTEST1。
二、在工程的stdafx.h头文件中添加入
#include "gdiplus.h" 
using namespace Gdiplus; 
#pragma comment(lib, "gdiplus.lib")或者在工程的属性->连接器->输入->附加依赖项中写入 gdiplus.lib
三、在工程的应用类中CGDIPLUSTEST1App的声明中添加一个成员变量
private:
 ULONG_PTR m_gdiplusToken;
再重写一个虚函数int ExitInstance();并实现
int CGDIPLUSTEST1App::ExitInstance()
{
 Gdiplus::GdiplusShutdown(m_gdiplusToken);//关闭GDI+
 return CWinApp::ExitInstance();
}
四、在应用类CGDIPLUSTEST1App的初始化函数
BOOL CGDIPLUSTEST1App::InitInstance()
{
  Gdiplus::GdiplusStartupInput gdiplusStartupInput;
   Gdiplus::GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);//开起GDI+
CWinAppEx::InitInstance();
..........
}
五、然后可以VIEW的ondraw函数中使用GDI+绘图
void CGDIPLUSTEST1View::OnDraw(CDC* pDC)
{
 CGDIPLUSTEST1Doc* pDoc = GetDocument();
 ASSERT_VALID(pDoc);
 if (!pDoc)
  return;
// TODO: 在此处为本机数据添加绘制代码
 Graphics graphics(pDC->m_hDC);
GraphicsPath path;//构造一个路径
 path.AddEllipse(50, 50, 200, 100);
 //使用路径构造一个画刷
 PathGradientBrush pthGrBrush(&path);
 //将路径中心颜色设为蓝色
 pthGrBrush.SetCenterColor(Color(255, 0, 0, 255));
 
 //设置路径周围的颜色为蓝色,但alpha值为0
 Color colors[] = {Color(0,0,0,255)};
 INT count = 1;
 pthGrBrush.SetSurroundColors(colors, &count);
graphics.FillRectangle(&pthGrBrush, 50, 50, 200, 100);
 
}
关于GDI+的一些使用基础设置的更多相关文章
- linux基础-第十四单元 Linux网络原理及基础设置
		
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
 - VB6 GDI+ 入门教程[5] 基础绘图小结
		
http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[5] 基础绘图小结 2009 年 6 月 18 日 4条 ...
 - hibernate----hibernate的基础设置
		
本次学习的内容是hibernate的基础设置 具体内容为: 一.准备工作 1.新建java工程 2.自动引入相关库(自动生成SessionFactory) 3.将数据库驱动拿进来 4.添加hibern ...
 - Linux网络服务01——Linux网络基础设置
		
Linux网络服务01--Linux网络基础设置 一.查看及测试网络 1.使用ifconfig命令查看网络接口 (1)查看活动的网络接口 ifconfig命令 [root@crushlinux ~]# ...
 - iptables 生产环境下基础设置
		
iptables 生产环境下基础设置 生成环境需求:防火墙需要让内网的Ip全部通过,外网IP添加到白名单,其他一切拒绝.安装在linux系统中安装yum install iptables-servic ...
 - IntelliJ IDEA 基础设置
		
原文地址:IntelliJ IDEA 基础设置 博客地址:http://www.extlight.com 一.前言 IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,Intel ...
 - 关于responseHeader的一些基础设置
		
1.关于响应头的一些基础设置 //设置相应头 response.addHeader("name","zhangsan"); response.addIntHea ...
 - linux网络基础设置 以及 软件安装
		
ifconfig #查看所有已激活的网卡信息 临时配置 #yum install net-tools -y 默认ifconfig是没有安装的,可能需要安装 ifconfig eth0 #查看单独一块网 ...
 - 项目一:项目第二天  Jquery ztree使用展示菜单数据  2、 基础设置需求分析  3、 搭建项目框架环境--ssh(复习)  4、 SpringData-JPA持久层入门案例(重点)  5、 Easyui menubutton菜单按钮使用  6、 Easyui messager消息框使用
		
1. Jquery ztree使用展示菜单数据 2. 基础设置需求分析 3. 搭建项目框架环境--ssh(复习) 4. SpringData-JPA持久层入门案例(重点) 5. Easyui menu ...
 
随机推荐
- 【转】JS对Cookie的读写删除
			
JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的.而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一种 ...
 - 多媒体开发之rtmp---rtmp client 端的实现
			
去年我就在流媒体朋友圈认识winlin 老乡,本来想参与srs的开发,可惜今年5月份身体不好,今天想起rtmp 做直播,有翻到老乡的博文如下: http://blog.csdn.net/win_lin ...
 - Activiti5小试牛刀demo流程
			
demo流程目标:刚接触Activiti5,先大致了解下Activiti5的架构,熟悉下开发流程 搭建开发环境 首先给MyEclipse安装Activiti Designer插件,下载网址http:/ ...
 - vim定位到指定行数
			
显示行号:命令模式下set nu 定位到指定行: 命令模式下,:n 比如想到第2行,:2 编辑模式下,ngg 比如想到第5行 5gg(或者5G) 打开文件定位到指定行 vim +n te ...
 - C# 文件过滤器filter
			
OpenFileDialog对话框的Filter属性说明: 首先说明一个示例,分析一下Filter属性的构成:“ Excel文件|*.xls ”,前面的“Excel文件”成为标签,是一个可读的字符串, ...
 - C# 验证过滤代理IP是否有效
			
private void 导入IPToolStripMenuItem_Click(object sender, EventArgs e) { using (OpenFileDialog Openfil ...
 - YII2 搭建redis拓展
			
安装redis扩展: 1.通过composer进行安装,到项目根目录cmd运行(推荐) php composer.phar require --prefer-dist yiisoft/yii2-red ...
 - SAX解析XML笔记
			
关于基本操作,请参考:Java用SAX解析XML,这里不重复造轮子了,以下是个人笔记:
 - Android使用http协议与服务器通信
			
网上介绍Android上http通信的文章很多,不过大部分只给出了实现代码的片段,一些注意事项和如何设计一个合理的类用来处理所有的http请求以及返回结果,一般都不会提及.因此,自己对此做了些总结,给 ...
 - [转]调试AngularJS应用
			
原文链接:Debugging AngularJS Apps from the Console 当我们开发AngularJS应用的时候,我们想在Chrome/FF/IE控制台调试隐藏在应用中的数据和服务 ...