2011-07-13 135 views
0

我想在我的32应用程序中用动画调整窗口大小。我到处搜索过,但找不到Win32/MFC API。我需要的动画行为非常简单。这只是扩大了窗口的高度。请让我知道我该如何实现这一行为。Win32窗口调整动画大小

回答

-1

看看:: AnimateWindow()。 MSDN链接:http://msdn.microsoft.com/en-us/library/ms632669%28v=vs.85%29.aspx

+0

嗨Roel,AnimateWindow看起来非常有希望用于动画。但是我怎么能从高度598调整到674? – fz300

+0

你是对的,我错了; AnimateWindow()仅用于显示/隐藏窗口。你将不得不推出自己的动画。您可以手动执行(每隔100 ms左右用一个定时器逐步调整窗口大小);显然,在VS2010的SP1更新中也有一种以各种方式进行插值的类(http://www.nuonsoft.com/blog/2010/12/16/the-new-mfc-animation-api/),但我有从来没有与它合作过。 – Roel

1

您可以使用GDI实现一些自定义动画效果。首先使用GetWindowRect获取窗口的坐标和位置。使用ShowWindow隐藏窗口。现在使用DrawRect,FillRect等在定时器中绘制动画。我会建议使用系统窗口颜色填充矩形。然后在动画完成时使用ShowWindow再次显示/调整窗口大小。