请问有没有好的界面切换或者图片切换效果的代码,winform的 您好。我看了dotnetbar关于winform的全部控件,里面有的是各种各样的漂亮的控件。但并没有图片或者窗体切换特效啊。是不是我没找到? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 VB.NET的仿手机的滑屏缩放的要不要,要的话晚上给你. 谢谢两位,我在示例中只看到了Metro Bill,但还是感觉窗体切换比较简单。我想实现的窗体切换效果类似于 ppt的幻灯片切换。http://transitionals.codeplex.com/ 这里的效果很不错。但是却是wpf的。我想找winform下这样的效果的代码。谢谢了。 你可以调用WindowsAPI,下面是一个例子,你试试。在这个例子的基础上,你可以通过Timer或者控制Form的透明度来实现你想要的效果。[System.Runtime.InteropServices.DllImport("user32")] private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags); private const int AW_HOR_POSITIVE = 0x0001;//从左向右显示 private const int AW_HOR_NEGATIVE = 0x0002;//从右向左显示 private const int AW_VER_POSITIVE = 0x0004;//从上到下显示 private const int AW_VER_NEGATIVE = 0x0008;//从下到上显示 private const int AW_CENTER = 0x0010;//从中间向四周 private const int AW_HIDE = 0x10000; private const int AW_ACTIVATE = 0x20000;//普通显示 private const int AW_SLIDE = 0x40000; private const int AW_BLEND = 0x80000;//透明渐变显示 private void Form1_Load(object sender, EventArgs e) { int animatetype = 10; Random a = new Random(); int dwFlags = (int)a.Next(animatetype); switch (dwFlags) { case 0://普通显示 AnimateWindow(Handle, 1000, AW_ACTIVATE); break; case 1://从左向右显示 AnimateWindow(Handle, 1000, AW_HOR_POSITIVE); break; case 2://从右向左显示 AnimateWindow(Handle, 1000, AW_HOR_NEGATIVE); break; case 3://从上到下显示 AnimateWindow(Handle, 1000, AW_VER_POSITIVE); break; case 4://从下到上显示 AnimateWindow(Handle, 1000, AW_VER_NEGATIVE); break; case 5://透明渐变显示 AnimateWindow(Handle, 1000, AW_BLEND); break; case 6://从中间向四周 AnimateWindow(Handle, 1000, AW_CENTER); break; case 7://左上角伸展 AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_POSITIVE | AW_VER_POSITIVE); break; case 8://左下角伸展 AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_POSITIVE | AW_VER_NEGATIVE); break; case 9://右上角伸展 AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_NEGATIVE | AW_VER_POSITIVE); break; case 10://右下角伸展 AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_NEGATIVE | AW_VER_NEGATIVE); break; } } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { AnimateWindow(this.Handle, 1000, AW_SLIDE | AW_HIDE | AW_VER_NEGATIVE); } AnimateWindow这个样式好象挺多。博客园去年有一篇文章是窗口切换效果的。也不错。只是效率差一些。如果楼主想要很复杂的。Direct试试。 http://www.pudn.com/downloads311/sourcecode/windows/csharp/detail1381496.html 试了下AnimateWindow,界面切换效果还是不是特别好,只有几个简单的切换效果。谢谢各位老大们的帮助。我现在的结论是用winform做,简单的可以,复杂一点的,暂时没有比较好的办法。不知道哪位老大有比较好的控件能实现复杂的切换的。比如像3D旋转,门,星状,棋盒,翻页等切换的 请问大神们能在分享点winform切面切换特效的代码 好吗 我qq 552 352 258 flashpaper2不能转换PDF文档到SWF格式吗?在线等.... c#语法求教 求C#字符串替换最效率的方法? c#如何实现泛型链表 参数问题~ 急!在线等!关于datagridview删除的问题 请教,在线等。在XML序列中,如何设置生成<!DOCTYPE SCHEMA SYSTEM "YSFPCGLJK.dtd">??? C#中有类似CMFCPropertySheet控件的么? 如果不使用html的marquee,全代码C#能不能实现marquee的效果? 一个逻辑判断问题 Repeater控件如何实现光棒效果?? C#调用C++回调函数,参数为结构的问题
在这个例子的基础上,你可以通过Timer或者控制Form的透明度来实现你想要的效果。
[System.Runtime.InteropServices.DllImport("user32")]
private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags);
private const int AW_HOR_POSITIVE = 0x0001;//从左向右显示
private const int AW_HOR_NEGATIVE = 0x0002;//从右向左显示
private const int AW_VER_POSITIVE = 0x0004;//从上到下显示
private const int AW_VER_NEGATIVE = 0x0008;//从下到上显示
private const int AW_CENTER = 0x0010;//从中间向四周
private const int AW_HIDE = 0x10000;
private const int AW_ACTIVATE = 0x20000;//普通显示
private const int AW_SLIDE = 0x40000;
private const int AW_BLEND = 0x80000;//透明渐变显示 private void Form1_Load(object sender, EventArgs e)
{
int animatetype = 10;
Random a = new Random();
int dwFlags = (int)a.Next(animatetype);
switch (dwFlags)
{
case 0://普通显示
AnimateWindow(Handle, 1000, AW_ACTIVATE);
break;
case 1://从左向右显示
AnimateWindow(Handle, 1000, AW_HOR_POSITIVE);
break;
case 2://从右向左显示
AnimateWindow(Handle, 1000, AW_HOR_NEGATIVE);
break;
case 3://从上到下显示
AnimateWindow(Handle, 1000, AW_VER_POSITIVE);
break;
case 4://从下到上显示
AnimateWindow(Handle, 1000, AW_VER_NEGATIVE);
break;
case 5://透明渐变显示
AnimateWindow(Handle, 1000, AW_BLEND);
break;
case 6://从中间向四周
AnimateWindow(Handle, 1000, AW_CENTER);
break;
case 7://左上角伸展
AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_POSITIVE | AW_VER_POSITIVE);
break;
case 8://左下角伸展
AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_POSITIVE | AW_VER_NEGATIVE);
break;
case 9://右上角伸展
AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_NEGATIVE | AW_VER_POSITIVE);
break;
case 10://右下角伸展
AnimateWindow(Handle, 1000, AW_SLIDE | AW_HOR_NEGATIVE | AW_VER_NEGATIVE);
break;
}
} private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
AnimateWindow(this.Handle, 1000, AW_SLIDE | AW_HIDE | AW_VER_NEGATIVE);
}
博客园去年有一篇文章是窗口切换效果的。也不错。只是效率差一些。如果楼主想要很复杂的。Direct试试。