创建主动画对象
若要在应用程序中使用Windows动画,第一步是创建一小组主动画对象。
概述
使用 CoCreateInstance 函数创建动画管理器、动画计时器和转换库对象。
创建和显示动画需要这些对象,因此在关闭应用程序之前,通常不应释放它们。 如果任何已注册的回调都不可能创建引用周期,则释放对象足以进行适当的清理。 否则,应用程序可以通过清除回调, (在每个) 或调用动画管理器的 Shutdown 方法的位置传递 NULL 来清理应用程序。
示例代码
以下示例代码取自 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;
...
};
下一步
完成此步骤后,下一步是: 创建动画变量。
相关主题