1

入力した最初の数値が表示されるように、通常の電卓と同様に実行されるコードを記述する必要があります。オペランドを押すと、入力ウィジェットには最初の数値が表示されますが、2 番目の数値を押すと、最初のものが置き換えられます。私はまだコード全体を書く段階には達していませんが、2 番目の数字を押すと最初のセットが置き換えられるところに行き詰まっています。最初にエントリの数値を変数として設定するよりも、キー == オペランドの 1 つを考えていました。次に、ent.delete(0,end) を実行して画面をクリアし、ent.insert(0,first) を実行します。エントリ ウィジェットに最初の数値を表示します。2番目の数字が押されたときにエントリウィジェットをクリアする方法がわかりません。

4

1 に答える 1

2

ここで必要なのは、状態の概念です。キーが押されるたびに、状態を確認し、実行するアクションを決定します。

初期状態では、数字を入力します。

オペランド ボタンが押されると、オペランドが格納され、状態が変更されます。

別の数字を押すと、数字が保存され、数字入力がクリアされ、数字入力が再開されます。

次に、等号ボタンが押されると、格納された数値とオペランドを数値入力の現在の数値と共に使用して演算を実行します。

Python のような動的言語では、変数と if ステートメントを使用して状態を確認する代わりに、状態に応じて押されたキー/ボタンを処理する関数を変更するだけでよいことに注意してください。

于 2010-02-15T08:03:44.063 に答える