CSkin博客

标题: 【跑马灯效果】C# 模拟跑马灯效果(2种) [打印本页]

作者: jingqia    时间: 2016-5-13 09:36
标题: 【跑马灯效果】C# 模拟跑马灯效果(2种)
说明:
项目中用到的(跑马灯效果),分享给大家

代码:
[C#] 纯文本查看 复制代码
#region 跑马灯效果方法
/// <summary>
/// 文字进入左侧后从右侧出来
/// </summary>
private void LabelRun()
{
    if ((lbMsg.Location.X + lbMsg.Width) > 0)
    {
        lbMsg.Left = lbMsg.Left - 2;
    }
    else//设置文字初始位置
    {
        lbMsg.Left = pBox.Width;
    }
}
bool flag = true;//标记文字滚动防线  true--往左  false--往右
/// <summary>
/// 文字在容器内来回碰撞
/// </summary>
private void LabelRunEx()
{
    if (flag)
    {
        if (lbMsg.Left > 0)//判断文字开端是否碰撞到了容器左侧边缘
        {
            lbMsg.Left = lbMsg.Left - 5;
            if (lbMsg.Left <= 0)
            {
                flag = false;
            }
        }
    }
    else
    {
        lbMsg.Left = lbMsg.Left + 5;
        if (lbMsg.Left >= pBox.Width - lbMsg.Width)//判断文字末尾是否碰撞到了容器右侧边缘
        {
            flag = true;
        }
    }
}
#endregion

#region 跑马灯线程  调用
new Thread(() =>
{
     while (true)
     {
         try
         {
             LabelRun();
         }
         catch { }
         Thread.Sleep(50);
     }
}) { IsBackground = true }.Start();
#endregion

作者: 贱贱的贱贱    时间: 2016-5-13 11:13
开发人员应该更注重于 业务逻辑的设计与实现, 而不是任何一个美工几分钟就能设计出来的gif效果
作者: jingqia    时间: 2016-5-13 11:32
贱贱的贱贱 发表于 2016-5-13 11:13
开发人员应该更注重于 业务逻辑的设计与实现, 而不是任何一个美工几分钟就能设计出来的gif效果 ...

项目中跑马灯使用到的文字是会变的,要考虑实际需求,能自己动手干嘛费那个劲,这种小功能美工做不完图片都做完了
作者: wking    时间: 2020-1-14 15:08
/// 文字在容器内来回碰撞




欢迎光临 CSkin博客 (http://bbs.cskin.net/) Powered by Discuz! X3.2