多媒体定时器的使用。

多媒体定时器与ontimer的区别是优先级较高,定时精度较高,可达到1ms

多媒体定时器包含以下三个部分:

1 timeSetEvent() (相当于settimer)

2 timeKillEvent()(相当于killtimer)

3 回调函数(相当于系统自动添加的ontimer  在里面写上定时需要去做的事)

以下是实际使用多媒体定时器的一个例子:

在头文件中添加:

#include <mmsystem.h>
#pragma comment(lib,"winmm")

在头文件中声明:

static void PASCAL TimeProc1(UINT uID,UINT uMsg,DWORD dwUser,DWORD dw1,DWORD dw2); // 定时器回调函数

int TimerID; // 定时器ID

在回调函数中:

void CQuView::TimeProc1(UINT uID,UINT uMsg, DWORD dwUser,DWORD dw1,DWORD dw2){
CQuView *myview=(CQuView*)dwUser;
myview->Invalidate();
//静态函数不能访问非静态成员
}

由于回调函数是静态函数,因此采用指针访问非静态成员。循环去做的事是invalidate().

在需要启动定时器的地方:

TimerID=timeSetEvent(50, 1, (LPTIMECALLBACK)TimeProc1, (DWORD)this,TIME_PERIODIC);

在需要关闭定时器的地方:

timeKillEvent(TimerID);

至此  定时器设置结束。

转载于:https://www.cnblogs.com/chenhonghe/p/5116687.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "C",全称为 "C语言",是一种高级程序设计语言。它由贝尔实验室的Dennis Ritchie在20世纪70年代初开发,并在当时的DEC PDP-11计算机上首次实现。 C语言在计算机编程领域具有非常重要的地位。它被广泛用于开发系统软件、应用软件和嵌入式系统。C语言具有简洁、高效、灵活以及跨平台等特点,使得它成为了一门非常流行的编程语言。 使用C语言可以进行各种编程任务,例如数据处理、算法设计、内存管理和设备控制等。它提供了许多功能强大的库和工具,方便开发人员进行编码和调试。 C语言的语法清晰简洁,易于学习和理解。它不仅可以进行低级的硬件编程,还支持高级结构化编程。作为一门通用的编程语言,C语言以其跨平台性和高性能而广泛应用于各类计算机硬件平台。 此外,由于C语言的普及和广泛应用,许多其他编程语言(如C++、C#和Objective-C等)都借鉴了C语言的语法和特性。因此,掌握C语言不仅可以帮助学习其他编程语言,也是成为一名优秀程序员的重要基础。 总之,C语言是一种强大而受欢迎的编程语言,具有广泛的应用领域和重要的地位。掌握C语言可以帮助开发人员进行各种编程任务,并成为编程技能的重要基础。 ### 回答2: 对于“c”这个问题,根据我所理解的情况,我认为你可能是在请求我回答有关于“c”的任意一个主题。根据这个猜测,我将采取以下几个主题进行回答。 首先,我会选择回答关于编程语言C的主题。C是一种通用的、面向过程的编程语言,由贝尔实验室的丹尼斯·里奇在1972年开发。C在计算机编程历史上具有重要意义,因为它是许多其他编程语言的基础,包括C++、Java和Python等。C语言具有高效、快速和灵活的特点,适用于系统软件、嵌入式系统和其他需要高度控制的应用程序的开发。它是一种底层语言,程序员需要直接管理内存,但这也赋予了他们更大的灵活性和控制权。 其次,我可以回答关于化学元素C(碳)的主题。碳是化学元素周期表中的第六个元素,具有原子序数6和原子量12.01。它是地球上最丰富的元素之一,并且在生物体和有机化合物中扮演重要角色。碳是有机化学的基础,几乎所有的生物大分子都是由碳构成。例如,脂肪、蛋白质和核酸等生物大分子都含有大量的碳原子。碳的化学性质多样,可以形成单键、双键和三键等各种化学键,这使得它能够形成许多不同的化合物。 最后,我可以回答关于“C”作为罗马数字的主题。在罗马数字中,C代表数字100。罗马数字是一种古老的计数系统,使用拉丁字母表示数字。C在罗马数字中是一个较大的数字,表示100。在罗马数字中,还有其他的字母表示其他的数字,如I代表1,V代表5,X代表10,L代表50等等。 以上是我对于“c”这个问题的回答。根据上述猜测的主题,我希望这些回答能够满足你的需求。如果我的猜测与你的问题不符,请告诉我具体的问题,我会尽力给予解答。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值