温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C++实现WPF动画的具体操作方法

发布时间:2021-10-27 18:46:25 来源:亿速云 阅读:157 作者:柒染 栏目:编程语言

本篇文章为大家展示了C++实现WPF动画的具体操作方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

C++编程语言的应方式非常广泛,可以帮助我们轻松的实现许多功能需求。

很多人都习惯使用Blend来帮助编辑XAML文件,生成很多动画。但在实际开发中,用代码来实现动画还是很实用的,而且代码的逻辑开发能力更强,更容易控制,这方面C#的例子已经很多了,下面我介绍几个C++实现WPF动画的例子。

首先介绍少渐隐渐现,也就是Alpha Animation。C++实现WPF动画代码如下

  1. /**//*  

  2. * Take Label for example  

  3. */  

  4. // 1, Find the lable by its name, The name define in the xaml file  

  5. Label^ pColorLabel = (Label^)page->FindName("ColorAnimationLabel");  

  6. // 2, Define a DoubleAnimation object  

  7. DoubleAnimation^ pDoubleAnimation = gcnew DoubleAnimation();  

  8. // 3, Set from to and duration  

  9. pDoubleAnimation->From = 1;  

  10. pDoubleAnimation->To = 0;  

  11. pDoubleAnimation->DurationDuration = Duration(TimeSpan::FromSeconds(3));  

  12. // 4, Create a storyboard(Timeline)  

  13. Storyboard^ pStoryboard = gcnew Storyboard();  

  14. // 5, Set the DoubleAnimation's target name  

  15. pStoryboard->SetTargetName(pDoubleAnimation, _T("ColorAnimationLabel"));  

  16. // 6, Set the DoubleAnimation's property  

  17. pStoryboard->SetTargetProperty(pDoubleAnimation, 
    gcnew PropertyPath(Label::OpacityProperty));  

  18. // 7, Add the DoubleAnimation object to the storyboard  

  19. pStoryboard->Children->Add(pDoubleAnimation);  

  20. // 8, Start the animation  

  21. pStoryboard->Begin(pColorLabel); 

上面C++实现WPF动画代码所用的XAML如下

  1. < Page 

  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 

  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 

  4. < Grid> 

  5. < DockPanel> 

  6. < Button Name="ColorAnmationButton" Width="100" Height="50" 
    Background="LightBlue">Color Anmation< /Button> 

  7. < Label Name="ColorAnimationLabel" Width="200" 
    Height="50" Background="Red"> 

  8. < /Label> 

  9. < /DockPanel> 

  10. < /Grid> 

  11. < /Page> 

上述内容就是C++实现WPF动画的具体操作方法,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI