国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

一個使用多媒體定時器的簡單例子

2019-11-17 05:29:37
字體:
來源:轉載
供稿:網友

  1)新建一個工程,保存

2)添加一個Button和一個Label

3)修改unit1.h代碼如下:
// ---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
// ---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
// ---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
    TButton *Button1;
    TLabel *Label1;
    void __fastcall Button1Click(TObject *Sender);
    void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
PRivate: // User declarations
public:  // User declarations
    __fastcall TForm1(TComponent* Owner);
    static void CALLBACK TimeProc(UINT uID,UINT uMsg,
        DWord dwUser,DWORD dw1,DWORD dw2); // 定時器回調函數
    int TimerID; // 定時器ID
};
// ---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
// ---------------------------------------------------------------------------
#endif

4)unit1.cpp代碼如下:
// ---------------------------------------------------------------------------

#include <vcl.h>
#include "mmsystem.h"
#pragma hdrstop
#include "Unit1.h"
// ---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
// ---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
    TimerID = 0;
}
// ---------------------------------------------------------------------------
void CALLBACK TForm1::TimeProc(UINT uID,UINT uMsg, DWORD dwUser,DWORD dw1,DWORD dw2)
{
    Form1->Label1->Caption = Now();
}
// ---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    TimerID = timeSetEvent(1000, 0, (LPTIMECALLBACK)TimeProc, 0,
        TIME_PERIODICTIME_CALLBACK_FUNCTION); // 設定多媒體定時器,1000ms

    if(TimerID == 0)    {
        ShowMessage("創建失敗");
    }
}
// ---------------------------------------------------------------------------
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)
{
    if(TimerID != 0)    {
        timeKillEvent(TimerID); // 釋放定時器
    }
}
// ---------------------------------------------------------------------------

運行效果:點擊按鈕后,Label1開始顯示時間
測試環境:BCB5 + WIN98

作者信息:
"Mao Yanwei(citiz)" <myw_fool@citiz.net>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平南县| 霍林郭勒市| 五华县| 贡觉县| 佛教| 万宁市| 雅江县| 绵竹市| 长治市| 云林县| 垦利县| 泸州市| 开江县| 兴和县| 五莲县| 马尔康县| 达孜县| 阳江市| 临清市| 如东县| 周宁县| 汽车| 栾川县| 隆林| 象山县| 内江市| 马公市| 巴东县| 忻州市| 新野县| 山阳县| 磐安县| 成武县| 涟水县| 三门县| 游戏| 会昌县| 普陀区| 大英县| 勐海县| 保定市|