你好ATM我眼前這個代碼如何使文本框文本來回移動?
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked == true)
{
x = 0;
timer1.Enabled = true;
timer1.Start();
}
else
{
timer1.Enabled = false;
}
}
private int x = 0;
private int y = 0;
private void timer1_Tick(object sender, EventArgs e)
{
if (x <= 10)
{
x++;
string ping = new string(' ', x) + "hello";
label1.Text = ping;
if (x == 10)
{
y = 10;
}
}
else if (y > 0)
{
y--;
string pong = new string(' ', y) + "hello";
label1.Text = pong;
if (y == 0)
{
x = 0;
}
}
}
標籤上有15個字符的最大長度,我希望它保持下去。
但我希望它,而不是使用「你好」,把我輸入到文本框中的文本,並做到這一點。
然而,它必須採取15和減去文本框的文本的長度,以保持標籤的最大長度15完好無損,同時在文本框中顯示整個單詞,但我無法弄清楚如何做到這一點,我試過了很多東西,但我不明白任何幫助將不勝感激。 :D
您可以將來自[此處](http://www.java2s.com/Code/CSharp/GUI-Windows-Form/MarqueeLabelHost.htm)的代碼綁定到您的計時器,以便在每個計時器上遞增其位置。 – 2012-02-15 01:45:23
不完全確定你以後的事情。你似乎正在做的是通過用空格填充來將詞語hello移到右邊然後到左邊。您可以通過更改Left(x)和Top(y)屬性來移動標籤控件。文本框控件也可以做到這一點。我假設你只是在這裏試驗動畫而不是設計用戶界面。對於用戶必須用鼠標敲擊移動文本框可能有點太「有趣」。 – Swanny 2012-02-15 01:53:03
基本上我試圖用文本框的文本替換你好,但標籤的最大長度是15,所以我不知道如何納入該 我會做15 - textbox1.text.length對嗎?但它不會讓我做一個私人int爲 – 2012-02-15 02:13:08