这篇文章主要介绍了C#如何实现会移动的文字效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
C#实现会移动的文字效果的具体内容如下
(1)Form1窗体设计界面如下:
(2)窗体左侧为一个靠左停靠的panel,其中包含一个label控件;
(3)初试状态时,“水平移动”选中,当用户单击“开始移动”按钮时,label在panel中水平从左向右移动,单击“暂停移动”按钮时,label停在原位置不动;
(4)在label移动过程中,若用户切换移动方式,则弹出对话框,提示先暂停移动;在label暂停移动时,用户切换移动方式,label在原位置以新的移动方式进行移动;
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Csharp7_2 { public partial class Form1 : Form { static int x = 0; static int y = 0; static int flag = 0; static int v = 0; static int h = 0; public Form1() { InitializeComponent(); } private void timer1_Tick(object sender, EventArgs e) { if (radioButton1.Checked && flag == 1) { if (label1.Location.X + label1.Size.Width >= (panel1.Location.X + panel1.Size.Width)) { v = 1; } if (label1.Location.X < panel1.Location.X) { v = 0; } if (v == 0) { x = 1; y = 0; } if (v == 1) { x = -1; y = 0; } } if (radioButton2.Checked && flag == 1) { if (label1.Location.Y + label1.Size.Height >= (panel1.Location.Y + panel1.Size.Height)) { h = 1; } if (label1.Location.Y < panel1.Location.Y) { h = 0; } if (h == 0) { x = 0; y = 1; } if (h == 1) { x = 0; y = -1; } } if (flag == 1) { Point p = new Point(label1.Location.X + x, label1.Location.Y + y); label1.Location = p; } } private void button1_Click(object sender, EventArgs e) { flag = 1; timer1.Start(); } private void button2_Click(object sender, EventArgs e) { flag = 0; timer1.Stop(); } private void radioButton1_CheckedChanged(object sender, EventArgs e) { if (radioButton2.Checked == true && flag == 1) { flag = 0; radioButton2.Checked = true; radioButton1.Checked = false; MessageBox.Show("请先停止移动"); } } private void radioButton2_CheckedChanged(object sender, EventArgs e) { if (radioButton1.Checked == true && flag == 1) { flag = 0; radioButton1.Checked = true; radioButton2.Checked = false; MessageBox.Show("请先停止移动"); } } } }
感谢你能够认真阅读完这篇文章,希望小编分享的“C#如何实现会移动的文字效果”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。