0

合計金額を計算するアプリケーションを作成しました。ボタンをクリックすると数量に 1 が追加されますが、1 だけ追加され、もう一度ボタンをクリックすると追加されません。方法はありますか?ボタンをループしますか?

これが私のサンプルコードです

int intclicks;

private void button10_Click(object sender, EventArgs e)
{

    intclicks++;
    int qty = 1;
    {
        if (intclicks > 0)
        {
            int totalqty;
            totalqty = qty + 1;
            textBox3.Text = totalqty.ToString();
            totalPrice();
        }
    }

}

totalPrice();セットは別の合計価格を表示します、textBoxありがとう。

4

4 に答える 4

2

イベントの最初に割り当てるqty =1ので、はい、最初から開始します。

ここには不足が多すぎますが、使用できるようです:

int qty = int.Parse(textBox3.Text);
...
于 2013-02-22T07:46:56.393 に答える
0

GUI プログラムでボタンをクリックすると、イベントが 1 回発生します。ClickEvent でのループは、メイン スレッドをブロックし、UI がフリーズするため、あまり役に立ちません。バックグラウンドでループするスレッドを開始できます。スレッドについては、 MSDNを参照してください。あなたが達成したいことをさらに説明してください。

于 2013-02-22T07:50:39.523 に答える
0

これは、ループ開始前に int qty= 1 を設定し、if 条件で if (intclicks > 0) をチェックしているためです。したがって、ボタンを初めてクリックすると、if (intclicks > 0) がチェックされますが、qty = 1 を設定しているため、条件は false になり、if 条件にはなりません。したがって、if条件をに変更します

if (intclicks >= 1)
于 2013-02-22T07:50:41.543 に答える
0

あなたの論理は、あなたがやろうとしていること(私が信じている)について少し外れていると思います。試してみませんか。

int intclicks;
int totalqty;

private void button10_Click(object sender, EventArgs e)
{

    intclicks++;
    if (intclicks > 0)
    {
        totalqty++
        textBox3.Text = totalqty.ToString();
        totalPrice();
        intclicks = 0;
    }
}
于 2013-02-22T07:51:14.507 に答える