-
VC++ 图像压缩:将BMP文件压缩成JPG文件
VC++ 图像压缩:将BMP文件压缩成JPG文件,在完成图片压缩的同时,转换图片的格式了,完成这些功能借助了一款外部的DLL文件,JpgDll.dll,因此在编译时请确保此文件存在。
操作方式也挺简单,如图所示,打开指定的BMP文件,然后单击“压缩”按钮,操作完成单击“保存”即可。
- 2022-02-15 22:47:52下载
- 积分:1
-
VC++ 三种方法创建不同类型的画刷
VC++ 三种方法创建不同类型的画刷,本源码实例 演示了VC++使用三种方法创建画笔,最核心的代码:
void CCreatePenView::OnDraw(CDC* pDC)
{
CCreatePenDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
// 第一种方法创建画笔
for (int i=0; i < 7; i++)
{
// 定义时调用构造函数
CPen myPen1(PS_SOLID + i,1,RGB(255,0,0));
CPen *pOldPen1 = pDC->SelectObject(&myPen1);
pDC->MoveTo(10,20*i+10);
pDC->LineTo(750,20*i+10);
// 恢复画笔对象
pDC->SelectObject(pOldPen1);
}
// 第二种方法创建画笔
for (int j = 0;j < 7; j++)
{
CPen myPen2; // 创建CPen类的一个对象myPen2
// 调用CreatePen()函数创建画笔
myPen2.CreatePen(PS_SOLID,j,RGB(0,255,255));
CPen *pOldPen2 = pDC->SelectObject(&myPen2);
pDC->MoveTo(10,180+20*j);
pDC->LineTo(750,180+j*20);
// 恢复画笔对象
pDC->SelectObject(pOldPen2);
}
// 第三种方法创建画笔
// 创建CPen类的一个对象myPen3
CPen myPen3;
// 设置LOGPEN结构;
LOGPEN lp ;
lp.lopnColor = RGB(255,0,255);
lp.lopnStyle = PS_SOLID ;
lp.lopnWidth.x = 8 ;
// 调用CreatePen
- 2023-04-20 18:00:04下载
- 积分:1
-
VC++ 小实验报告:Sin正弦波曲线绘制
VC++ 小实验报告:Sin正弦波曲线绘制,包括了坐标方面的技巧和波形绘制方面的知识,都可以从本示例中学习到,源代码简单,运行效果请看截图所示。
- 2023-08-02 06:25:02下载
- 积分:1
-
VC 使用LineDDA画有节点的连线实例
本源码主要演示使用VC ++中的LineDDA画有节点的连线,画出的效果可参见截图所示。
//画线
pDC->MoveTo(10,10);
pDC->LineTo(300,300);
//使用LineDDA沿线按一定间隔画“0”
//这个回调例程将在线上每个点处被调用
//实现注解:使用lpData传递用于绘图的CDC对象的引用
CDC* pDC;
pDC = (CDC*)lpData;
if( X % 20 ==0)
{
pDC->TextOut(X,Y,_T("0"));
}
- 2022-02-19 23:13:45下载
- 积分:1
-
VC 电话录音的实现
这个VC 源码模拟实现了电话录音的功能,运行时显示通道信息,程序首先要加载驱动程序,检查可用的通道数量,设置CardList列表扩展风格,然后显示使用的通道信息,包括了通道号,通道类型,状态,信息。并定义了电话的三种状态,即:内线、外线、悬空。在外线来电话状态,可以启动录音程序,摘机,开始录音,挂机停止录音,录音过程中判断电话是否挂机,双保险。
- 2023-06-20 11:50:03下载
- 积分:1
-
VC++ 创建DIB操作类——CDib的源程序代码
VC++ 创建DIB操作类——CDib的源程序代码,这个类中创建了几个函数:1、用来绘制DIB对象的函数,2、按照DIB创建一个逻辑调色板的函数,3、计算DIB像素的起始位置,并返回指针的函数,4、返回DIB中图象的高度的函数,5、返回DIB中调色板的大小的函数,6、返回DIB中调色板颜色种数的函数等。
用于操作DIB的函数声明如下:
BOOL DrawDib(HDC, LPRECT,HGLOBAL, LPRECT,CPalette*);//显示位图
BOOL ConstructPalette(HGLOBAL,CPalette* );//构造逻辑调色板
LPSTR GetBits(LPSTR); //取得位图数据的入口地址
DWORD GetWidth(LPSTR);//取得位图的宽度
DWORD GetHeight(LPSTR);//取得位图的高度
WORD GetPalSize(LPSTR); //取得调色板的大小
WORD GetColorNum(LPSTR);//取得位图包含的颜色数目
WORD GetBitCount(LPSTR);//取得位图的颜色深度
HGLOBAL CopyObject(HGLOBAL);//用于复制位图对象
BOOL SaveFile(HGLOBAL , CFile&);//存储位图为文件
HGLOBAL LoadFile(CFile&);//从文件中加载位图
// 在对图象进行处理时,针对位图的字节宽度必须是4的倍数的这一要求,我们设计了函数GetRequireWidth,来处理这种比较特殊的情况:
int GetReqByteWidth(int ); //转换后的字节数GetRequireByteWidth
long GetRectWidth(LPCRECT );//取得区域的宽度
long GetRectHeight(LPCRECT);//取得区域的高度
- 2022-03-09 13:34:37下载
- 积分:1
-
VC++ DirectShow开发指南源码集
VC++ DirectShow开发指南源码集,涉及的内容几乎涵盖了在Windows平台上使用DirectShow进行C++编码的方方面面。全书详细介绍了DirectShow的基础知识,重点讨论了Filter的开发,以及DirectShow
应用程序的开发,包括目前非常流行的如音视频采集、数码摄像机的支持、非线性
编辑等应用,深入分析了DirectShow SDK提供的部分典型源代码例子,结合作者个人的一些开发实践,通过案例和开放源码分析,进一步介绍DirectShow的实务应用。
此为本书的配套源码集,对VC++编程者来说,是比较不错的编程资料。
- 2022-02-15 05:44:18下载
- 积分:1
-
VC++ 图书管理系统含 SQLSERVER数据库
一套完整的VC++ 图书管理系统源码,含 SQLSERVER数据库,数据库在database目录下,测试前请附加并连接好。源代码在源程序目录内,很完整,可在VC++6.0环境下顺利编译。运行效果如下图所示。
本套图书管理系统功能主要有:基本信息、图片管理、库存管理、查询管理、系统管理、系统登录、口令管理、系统人员管理等。每一个模块下都有很多子模块,界面设计也是很符合用户习惯的。
- 2023-09-07 13:35:03下载
- 积分:1
-
VC利用OpenGL绘制NURBS曲线
VC++利用OpenGL绘制NURBS曲线,程序将进行缓冲区交换,交换缓冲区,运行后将生成一个三维曲线图,模拟NURBS曲线效果,最终效果请参见示例图所示。
- 2022-01-26 07:51:48下载
- 积分:1
-
C++课程设计大作业_学生管理系统(含源代码+实验报告)
这个C++作业主要是编写一个学生成绩管理系统,资料中包括了实验文档报告和项目源代码,项目代码并不多,对学习有帮助。
1.设计目的:用计算机完成对学生成绩的管理。包括对计算机所储存信息的查询、修改、删除、统计等。利用简单容易操作的菜单界面,方便学校、教师等利用计算机的高效、智能化以及存储的便捷性对学生成绩进行管理,可以节省人力时间,安全便捷。
2.总体设计:学生成绩管理系统提供三大模块,即学生成绩信息维护,学生成绩信息查询,学生成绩统计。其中信息维护包括对学生信息的修改,删除和增加,信息查询实现通过学生学号或姓名查询成绩的功能。学生成绩统计则对不同科目不同分数段的学生进行统计,方便用户对学生成绩获得总体的了解和把握。
3.详细设计:首先为用户提供方便的菜单,利用数据输入输出流和规范化输出等实现。再由控制结构实现用户选择与系统功能的对应。利用文件输入输出使C++程序与其数据的存储所在得txt文件联系起来,并进行读写操作。利用2个string类型的数组存储学生姓名和学号,再利用3个int类型数组用来存储学生的三科成绩。
函数实现系统的功能。首先,通过一个getRow函数获得系统中目前存储的学生人数。再通过一个getID函数,将txt文件中的学生信息录入到之前声明的五个数组中。然后即可对学生数据进行操作。searchGrade可实现用户对学生成绩的查询,changeGrade可帮助用户修改学生的各项信息,addGrade可以向计算机存储中增加新的学生信息,countGrade可统计不同科目不同分数段的学生分布情况。另外,enterChoice函数用来帮助信息维护的用户对不同的维护选项进行选择,而saveResult则在用户对数据进行维护后进行文件的保存,完成C++程序与txt文件的数据交流。main函数主要进行控制结构的安排和变量的声明。
在全部功能实现并正常编译后,对程序进行了新的修改。在countGrade中提供了更多学生信息,完善了错误反馈机制。并对菜单进行了美化调整。对几个函数的位置作了调整。
经调试,程序能够快速准确的执行设计目的中的各项要求和期望,达到设计初衷。
所有这些资料,你都可以通过压缩包中的课程设计报告.doc文档来了解。
- 2022-02-09 18:24:25下载
- 积分:1