-
VC++ 6.0创建带有文本指示的自定义进度条
VC++ 6.0创建带有文本指示的自定义进度条,自己创建的带有文本的进度条:,
GetClientRect(&rectClient);//获取进度条窗口
CBrush brush;
brush.CreateSolidBrush(::GetSysColor(COLOR_3DFACE));//获取系统画刷
dc.FillRect(&rectClient, &brush);//填充进度条窗口
VERIFY(brush.DeleteObject());//删除画刷
if (m_nCurrentPosition m_nUpper)//进度条没有运行
{
return;
}
brush.CreateSolidBrush(RGB(0, 0,255));//创建蓝色画刷
RECT rectFill;//定义填充区域
float fillwidh=(float)((float)(m_nCurrentPosition-m_nLower)/(float)(m_nUpper-m_nLower))*rectClient.right;
::SetRect(&rectFill,
0,// 左上X坐标
0,//左上Y坐标
(int)fillwidh,//右下X坐标
rectClient.bottom+1);//右下Y坐标
dc.FillRect(&rectFill,&brush);//填充进度条区域
VERIFY(brush.DeleteObject());
CString percent;
percent.Format("已完成:%.0f%%", 100.0*(float)(m_nCurrentPosition-m_nLower)/(float)(m_nUpper-m_nLower));
dc.SetTextColor(RGB(255,0,0));//设置文本颜色
dc.SetBkMode(TRANSPARENT);//透明背景
dc.DrawText(percent, &rectClient, DT_VCENTER|DT_CENTER|DT_SINGLELINE);//显示文本信息
- 2023-06-16 21:25:02下载
- 积分: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++ 6.0 查询日期控件内的数据库内容
VC++ 6.0 查询日期控件内数据,这个例子是结合数据库实现的,应该算是数据库实例的范畴,是一个将日期类型数据作为查询条件的一个例子。只不过这里的日期类型,是通过日期控件来选择,因此本实例演示了两个重要功能:一、数据库查询检索、二日期控件的使用,使用日期控件可有效避免用户手动输入日期数据出错,减少不必要的时间。
- 2022-03-14 13:16:20下载
- 积分:1
-
VC 使用加密狗进行身份验证
VC 使用加密狗进行身份验证,一个加密范畴的例子,有兴趣的下载源码自行编译看效果,身份认证核心代码如下:
DogAddr = 10; //设置起始地址
DogBytes = 6; //设置数据的长度
DogData = m_Text.GetBuffer(6); //设置写入的数据
if (ReadDog()==0)
{
if (m_Text == m_Data)
MessageBox("身份验证成功");
else
MessageBox("身份验证失败");
}
- 2022-02-10 11:47:15下载
- 积分:1
-
用VS2008+ATL开发可以显示Gif的ActiveX控件源码
VS2008%2BATL开发Gif的ActiveX控件%28毛坯%29
创建一个空的解决方案,名称GifSolution。将来包含控件项目和测试项目。新建项目,弹出的对话框中选ATL项目,名称为GifAnimate确定。弹出的对话框中选择DLL服务器(可选允许合并代理存根,这样不会产生代理dll),完成后编译,这样工程框架就完成了。
组件分有窗口的和无窗口的,这里应该用有窗口的,所以添加组件的时候,外观不要基于none,最好基于CStatic。因为gif是动态的,应该用另一个线程绘制,这样不影响主线程响应消息,绘图更加流畅。
为GifAnimate项目添加类-选择ATL控件,点击添加,弹出对话框。
1.本文只是举例说明开发过程,抛砖而已。
2.样例只是框架,不能直接使用,所有代码没有经过测试
3.样例接收器GifSink和属性页卡片没有完成,懒了,呵呵
4.样例背景等很多属性没有实现
5.使用了GDI+,但GDI+的Image类的SetActiveFrame函数有问题,网上貌似没有解决办法。Debug版本不影响使用,Release版本没有测试。如果有兴趣,可以使用IPicture接口,网上很多。
- 2022-03-31 20:14:24下载
- 积分:1
-
西工大C++ OpenGL 三D台球室场景
收集分享给大家一个C++大作业,是由西工大学生完成的C++ OpenGL 三D台球室场景,这个台球室基于OpenGL的贴图技术实现,用了不少的BMP素材来贴图,不过效果真的挺不错,进入场景后,鼠标拖动、移动均可改变场景角度,台球桌和台球室场景均发生变化,就连窗外的大海也能看清,这个场景完全可扩展一上,用在3D如球游戏中。不过本效果实现,调用了几个外部组件:cygwin1.dll、EaxAc3.dll、glut32.dll、OpenAL32.dll等。最终效果可参见截图所示。
- 2022-05-13 03:54:05下载
- 积分:1
-
VC++ CREATE VIEW语句动态创建数据库视图
VC++ 动态创建视图,使用CREATE VIEW语句动态创建数据库视图,具体请下载本源码测试,需要提前准备好数据库。需要导入一个ADO动态链接库msado15.dll,该动态库位于系统盘下的“Program FilesCommon FilesSystemado”目录下。数据库连接好才可以使用本程序动态创建视图。
- 2022-08-03 17:42:23下载
- 积分:1
-
VC 钱箱控制程序示例
VC++6.0 钱箱控制程序示例,程序以一个超市销售终端为例子,演示钱箱控制的基本操作、程序实现等。程序中将使用到m_List、CButton、SetPortOpen、SetCommPort等来实现钱箱控制。在编写类似的销售软件时,这个程序可借鉴。
- 2022-06-21 11:22:49下载
- 积分:1
-
Windows核心编程第五版随书源码集
VC++ Windows核心编程第五版随书源码集,这些例子是很好的学习VC++编程的资料,每一个都可以编译运行,对照《VC++ Windows核心编程》这本书,理论加实践,会有更好的学习效果。
- 2022-11-21 20:20:03下载
- 积分:1
-
VC++ 6.0 定时关机
VC++ 6.0 定时关机,设置时间,自动关机,时间以分钟计,在确定使用本功能前,请确保保存当前工作,系统将于设定的时间到达后自动关机。
- 2022-02-04 23:31:44下载
- 积分:1