0

ボタンを押してラベル( Label2 という名前)を右に移動したいのですが、ボタンをもう一度押すと、もう一度移動したいです(理解していただければ幸いです)

これは私のコードです:

private void button3_Click(object sender, EventArgs e)
    {
        int x = 28;
        x++;
        label2.Location = new Point(x, 63);
    }

しかし、うまくいきません。私は何を間違っていますか?

4

3 に答える 3

2

これは、ローカルを使用しているint xためで、ボタンをクリックするたびに 28 にリセットされます。

「x」がフィールドになるように、宣言をメソッドのx外に移動します。button3_Click()次に、ボタンのクリックごとに値を保持します。

明らかに、より良い名前を付ける必要があります。おそらくcurrentLabelLeft

于 2013-04-20T20:00:19.277 に答える
1

これにより、毎回 1 ピクセルずつ右に移動します。

private void button3_Click(object sender, EventArgs e)
    {
        int x = label2.Location.X;
        x++;
        label2.Location = new Point(x, 63);
    }
于 2013-04-20T20:07:18.693 に答える
0

2 つの css クラスを作成し、次のように設定します (分離コードから設定する必要がある場合)。

label2.CssClass = "move_to_right"
于 2013-04-20T20:00:08.050 に答える