-
VC++ 6.0 GetTickCount() 高精度计时功能的实现实例
本源码演示在VC++ 6.0环境下实现高精度计时功能,可在此基础上修改完善成一个毫秒级计时器。运行编译文件后,单击窗口中的按钮,即可激活计时功能,在弹出的窗口中显示计时时间,以毫秒计,请参见截图。计时部分的具体实现代码请参考以下代码:
void CDemoDlg::OnTest()
{
//开始时间
DWORD dwStart = GetTickCount();
for (int i = 0; i < 10000; i++)
{
for (int j = 0; j < 10000; j++)
{
}
}
//结束时间
DWORD dwStop = GetTickCount();
//时间间隔
DWORD dwElapse = dwStop - dwStart;
CString strText = _T("");
strText.Format(_T("时间间隔:%d毫秒"), dwElapse);
AfxMessageBox(strText);
}
- 2022-07-22 05:40:03下载
- 积分:1
-
VC++ 仿Windows“画图”程序
VC++ “画图”程序源代码,编译后的运行效果如演示截图所示。
这个画图程序其实是参照Windows自带的画图而编写的,功能和界面布局都十分相似,不过用VC++写出画图,说明你对VC++图像处理各方面的技巧已经掌握 ,因此学习研究本源码,有助于你提高VC++图像绘制、处理方面的技巧,VC++新手必看程序。
程序功能:选择画笔大孝画笔颜色、清除、保存等,还有一些几何图形绘制工具比如圆形、椭圆、矩形工具等供使用。
- 2022-03-20 01:18:01下载
- 积分:1
-
又一个简单的VC++ 定时关机功能实现
又一个简单的VC++ 定时关机功能实现,程序运行后屏蔽最大化,将最小化重定向至隐藏窗口,在Windows托盘处显示图标,双击该图标可调用出定时关机设置窗口。具体实现定时关机功能的代码如下:
// 将图标放入系统托盘
TrayNotifyMsg(NIM_ADD, IDR_MAINFRAME, "定时关机");
// 初始化关机时间为23点.
SYSTEMTIME systime;
((CDateTimeCtrl*)GetDlgItem(IDC_DATETIMEPICKER_TIME))->GetTime(&systime);
systime.wHour = 23;
systime.wMinute = 0;
systime.wSecond = 0;
((CDateTimeCtrl*)GetDlgItem(IDC_DATETIMEPICKER_TIME))->SetTime(&systime);
// 设定定时器
SetTimer(1, 1000, NULL);
// 显示当前的系统时间
ShowCurrentTime();
return TRUE; // return TRUE unless you set the focus to a control
}
- 2022-02-02 22:49:18下载
- 积分:1
-
VC6.0 对画图文档实行序列化处理
VC6.0 文档序列化实例——对画图文档实行序列化处理,文挡之序列化(Serialize)读写例子,代码翻译:一剑。
// 打印带水平线的文档名字
pDC->SetTextAlign(TA_LEFT);
pDC->TextOut(0,-25, strHeader); // 1/4 inch down
// 在文档头的下面画一条直线横穿页面
TEXTMETRIC textMetric;
pDC->GetTextMetrics(&textMetric);
int y = -35 - textMetric.tmHeight; // 横线在距离文本下方1/10 英寸处
pDC->MoveTo(0, y); // 从左边空白处
pDC->LineTo(pInfo->m_rectDraw.right, y); // 到右边空白处
y -= 25;
pInfo->m_rectDraw.top += y;
- 2023-04-28 14:50:03下载
- 积分:1
-
收集3个与进程相关的VC++源代码
收集3个与进程相关的VC++源代码,主要是进程的创建、进程控制、控制其他进程这三个源码,每一个在VC6.0环境下都可以顺利编译,这些例子都不复杂,因此是初学者学习VC++很不错的范例。
- 2022-04-26 15:50:40下载
- 积分:1
-
VC++ 6.0 查询日期控件内的数据库内容
VC++ 6.0 查询日期控件内数据,这个例子是结合数据库实现的,应该算是数据库实例的范畴,是一个将日期类型数据作为查询条件的一个例子。只不过这里的日期类型,是通过日期控件来选择,因此本实例演示了两个重要功能:一、数据库查询检索、二日期控件的使用,使用日期控件可有效避免用户手动输入日期数据出错,减少不必要的时间。
- 2022-03-14 13:16:20下载
- 积分:1
-
VC++ 生成Brush笔刷程序
VC++ 生成Brush笔刷程序,使用了三种方法创建笔刷,第一种和第二种使用构造函数,第三种 创建CBrush类的一个对象myBrush3,调用CreateBrushIndirect()函数。创建了纯色、斜纹、网状方格三种形式的笔刷。
void CCreateBrushView::OnDraw(CDC* pDC)
{
CCreateBrushDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
// 第一种方法创建画刷
// 定义时调用构造函数
CBrush myBrush1(RGB(0,0,255));
CBrush* pOldBrush1 = pDC->SelectObject(&myBrush1);
pDC->Rectangle(100,150,250,400);
// 恢复画刷对象
pDC->SelectObject(pOldBrush1);
// 第二种方法创建画刷
// 定义时调用构造函数
CBrush myBrush2(HS_BDIAGONAL,RGB(255,0,0));
CBrush* pOldBrush2 = pDC->SelectObject(&myBrush2);
pDC->Rectangle(300,100,450,360);
// 恢复画刷对象
pDC->SelectObject(pOldBrush2);
// 第三种方法创建画刷
// 创建CBrush类的一个对象myBrush3
CBrush myBrush3;
// 设置LOGBRUSH结构;
LOGBRUSH lb;
lb.lbStyle = BS_HATCHED;
lb.lbColor = RGB(0,255,0);
lb.lbHatch = HS_CROSS;
// 调用CreateBrushIndirect()函数
myBrush3.CreateBrushIndirect(&lb);
CBrush* pOldBrush3 = pDC->SelectObject(&myBrush
- 2022-01-30 23:25:40下载
- 积分:1
-
VC++ 6.0 改变视图窗口的背景色
VC++ 改变视图窗口的背景色,在窗口的显示区自定义颜色,有兴趣可参考以下代码:
void CFaceControl1View::OnChageviewbk() //改变背景色
{
m_rgbBack=RGB(0,128,128);
Invalidate(true);
}
BOOL CFaceControl1View::OnEraseBkgnd(CDC* pDC)
{
CBrush Brush (m_rgbBack);// 创建一个新的刷子
CBrush* pOldBrush = pDC->SelectObject (&Brush);// 把刷子选入设备环境
//获得需要檫除背景的区域
CRect reClip;
GetClientRect(&reClip);
//重绘该区域
pDC->PatBlt(reClip.left , reClip.top , reClip.Width () , reClip.Height() , PATCOPY);
//释放刷子
pDC->SelectObject (pOldBrush);
return TRUE;//必须返回TURE
}
- 2022-08-04 05:28:13下载
- 积分:1
-
VC++ 使用断言宏检测程序的运行状态
VC++ 使用断言宏检测程序的运行状态,这是一个VC++6.0 书中的代码,我没有搞懂是什么意思,检测程序运行状态的,里面还包括了数组的使用、排序方法、产生随机种子、输出排序后的数组顺序等,
- 2023-03-28 12:15:04下载
- 积分:1
-
VC++ 6.0 实现选中项缩进的列表框
VC++ 6.0 实现选中项缩进的列表框,选中列表项后,该项缩进,文本显示为红色,自定义列表框控件,注意观察选中后的特性,重载控件的DrawItem函数。下面来看实现这一功能的代码段:
dc.Attach(lpDrawItemStruct->hDC);//获取列表框的DC
CRect rect(lpDrawItemStruct->rcItem);//获取列表框的矩形区域
COLORREF bk = dc.GetBkColor();//背景颜色
COLORREF fg = dc.GetTextColor();//系统文本颜色
if(lpDrawItemStruct->itemState & ODS_SELECTED)//该项被选中
{
bk = RGB(180,180,0 );//背景颜色
fg = RGB(255,0,0 );//红色文本
}
dc.SetTextColor(fg);
CBrush brush(bk);
dc.FillRect(&rect,&brush);
if (lpDrawItemStruct->itemState&ODS_SELECTED)
rect.left +=25;//缩进25个象素
int nBkMode = dc.SetBkMode( TRANSPARENT );
CString str;
GetText(lpDrawItemStruct->itemID,str) ;
dc.DrawText(str, &rect, DT_LEFT|DT_VCENTER);//显示文本
dc.SetTextColor(fg);
dc.SetBkMode( nBkMode );
dc.Detach() ;
- 2022-06-13 09:32:23下载
- 积分:1