我试图让我的标签在原来的位置是左上角。我想要发生的是当程序启动时,它会在滑行动作中大约1.5秒内逐渐进入应用程序的中心顶部。
那我该怎么办呢?我很确定有一个需要设置的变量。我使用的是Windows Forms。
答案 0 :(得分:2)
你可以做几件事:
Label
控件Timer
并按1.5秒间隔进行滑行动作Tick
事件中,将Label.Location
的位置逐渐更改为应用程序的中心顶部OR
OnPaint
活动Graphics.DrawString()
DrawString()
位置Timer
每1.5秒使绘画无效,Invalidate()
文字位置样品
public partial class Form1 : Form
{
public Form1()
{
this.InitializeComponent();
this.InitializeTimer();
}
private void InitializeTimer()
{
this.timer1.Interval = 1500; //1.5 seconds
this.timer1.Enabled = true; //Start
}
private void timer1_Tick(object sender, EventArgs e)
{
int step = 5; //Move 5 pixels every 1.5 seconds
//Limit and stop till center-x of label reaches center-x of the form's
if ((this.label1.Location.X + (this.label1.Width / 2)) < (this.ClientRectangle.Width / 2))
//Move from left to right by incrementing x
this.label1.Location = new Point(this.label1.Location.X + step, this.label1.Location.Y);
else
this.timer1.Enabled = false; //Stop
}
}