1 #region 跑马灯效果方法
2 /// <summary>
3 /// 文字进入左侧后从右侧出来
4 /// </summary>
5 private void LabelRun()
6 {
7 if ((lbMsg.Location.X + lbMsg.Width) > 0)
8 {
9 lbMsg.Left = lbMsg.Left - 5;
10 }
11 else//设置文字初始位置
12 {
13 lbMsg.Left = pBox.Width;
14 }
15 }
16
17 bool flag = true;//标记文字滚动防线 true--往左 false--往右
18 /// <summary>
19 /// 文字在容器内来回碰撞
20 /// </summary>
21 private void LabelRunEx()
22 {
23 if (flag)
24 {
25 if (lbMsg.Left > 0)//判断文字开端是否碰撞到了容器左侧边缘
26 {
27 lbMsg.Left = lbMsg.Left - 5;
28 if (lbMsg.Left <= 0)
29 {
30 flag = false;
31 }
32 }
33 }
34 else
35 {
36 lbMsg.Left = lbMsg.Left + 5;
37 if (lbMsg.Left >= pBox.Width - lbMsg.Width)//判断文字末尾是否碰撞到了容器右侧边缘
38 {
39 flag = true;
40 }
41 }
42 }
43 #endregion