共用方式為


建立主要動畫物件

若要在應用程式中使用 Windows 動畫,第一個步驟是建立一小組主要動畫物件。

概述

使用 CoCreateInstance 函式來建立動畫管理員、動畫定時器和轉換連結庫物件。

建立和顯示動畫需要這些物件,因此在應用程式關閉之前,通常不應該釋放它們。 如果任何已註冊的回呼都不可能建立循環引用,則釋放物件就足以進行適當的清除。 否則,應用程式可以透過傳遞 NULL 的方式來清除回呼,或透過呼叫動畫管理員的 Shutdown 方法來進行清理。

範例程序代碼

下列範例程式代碼取自 Windows 動畫範例中的MainWindow.cpp;請參閱 CMainWindow::InitializeAnimation 方法。

// Create the animation manager object

HRESULT hr = CoCreateInstance(
    CLSID_UIAnimationManager,
    NULL,
    CLSCTX_INPROC_SERVER,
    IID_PPV_ARGS(&m_pAnimationManager)
    );

if (SUCCEEDED(hr))
{
    // Create the animation timer object

    hr = CoCreateInstance(
        CLSID_UIAnimationTimer,
        NULL,
        CLSCTX_INPROC_SERVER,
        IID_PPV_ARGS(&m_pAnimationTimer)
        );

    if (SUCCEEDED(hr))
    {
        // Create the transition library object

        hr = CoCreateInstance(
            CLSID_UIAnimationTransitionLibrary,
            NULL,
            CLSCTX_INPROC_SERVER,
            IID_PPV_ARGS(&m_pTransitionLibrary)
            );

        ...

    }

    ...

}

請注意下列來自 MainWindow.h 的定義。

class CMainWindow
{

    ...

private:

    // Animation components

    IUIAnimationManager *m_pAnimationManager;
    IUIAnimationTimer *m_pAnimationTimer;
    IUIAnimationTransitionLibrary *m_pTransitionLibrary;

    ...

};

下一步

完成此步驟之後,下一個步驟是:建立動畫變數

CoCreateInstance

IUIAnimationManager

IUIAnimationTimer

IUIAnimationTransitionLibrary

Windows 動畫概觀