none
有关QQ淡入淡出问题 RRS feed

答案

  • 呵呵
    这个问题有意思啊。

    淡入淡出不光是透明度控制,应该还包括 弹出消息窗口的位置控制。

    不过原理都一样。
    1.透明度渐变效果。(确实可以循环控制控件的透明度,基本原理都一样,不论Winform 还是Div,或者其它变成平台。不过QQ应该不是C#开发的)
    2.消息窗口逐渐隐藏的效果。(MSN也有上线提醒的功能,提示后,消息逐渐下移,消失。应该控制了控件的位置)

    找出 透明度/位置与时间的数学关系,其它的都放在代码里控制。网上这种文章应该很多。
    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    欢迎访问老徐的中文技术博客:Welcome to My Chinese Technical Blog
    欢迎访问微软WCF中文技术论坛:Welcome to Microsoft Chinese WCF Forum
    欢迎访问微软WCF英文技术论坛:Welcome to Microsoft English WCF Forum
    2009年12月4日 2:00
    版主
  • 这个动画在WinForm中可以用如下方法来模拟:
    你设置一个“响应”区域,然后使用MouseMove事件,当鼠标移动到这个区域,就启动一个Timer,每隔一定时间(比如100毫秒),改变一次窗体的位置来形成动画的效果!
    周雪峰
    2009年12月4日 10:21
    版主

全部回复

  • 控制透明度应该可以
    用循环

    2009年12月3日 14:41
  • 如果需求更复杂的话也可以用wpf 动画技术做
    2009年12月3日 14:49
  • 你好!
         我刚才帮助你写了一个,希望对你有帮助,你使用窗体的Shown事件,然后通过循环来增加Opacity属性:
    namespace WindowsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                this.Opacity = 0;
            }

            private void form1_Shown(object sender, EventArgs e)
            {
                for (int i = 1; i <= 10; i++)
                {
                    this.Opacity = i/10.0;
                    System.Threading.Thread.Sleep(200);
                }
            }
        }
    }
    周雪峰
    2009年12月3日 15:08
    版主
  • 呵呵
    这个问题有意思啊。

    淡入淡出不光是透明度控制,应该还包括 弹出消息窗口的位置控制。

    不过原理都一样。
    1.透明度渐变效果。(确实可以循环控制控件的透明度,基本原理都一样,不论Winform 还是Div,或者其它变成平台。不过QQ应该不是C#开发的)
    2.消息窗口逐渐隐藏的效果。(MSN也有上线提醒的功能,提示后,消息逐渐下移,消失。应该控制了控件的位置)

    找出 透明度/位置与时间的数学关系,其它的都放在代码里控制。网上这种文章应该很多。
    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    欢迎访问老徐的中文技术博客:Welcome to My Chinese Technical Blog
    欢迎访问微软WCF中文技术论坛:Welcome to Microsoft Chinese WCF Forum
    欢迎访问微软WCF英文技术论坛:Welcome to Microsoft English WCF Forum
    2009年12月4日 2:00
    版主
  • 真不好意思,可能我没有把问题描述清楚。我的意思是当把QQ界面拉到桌面顶部时,自动伸缩如何实现?谢谢。


    心悟成佛,心迷成魔.
    2009年12月4日 2:54
  • 这个动画在WinForm中可以用如下方法来模拟:
    你设置一个“响应”区域,然后使用MouseMove事件,当鼠标移动到这个区域,就启动一个Timer,每隔一定时间(比如100毫秒),改变一次窗体的位置来形成动画的效果!
    周雪峰
    2009年12月4日 10:21
    版主