teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

誤記訂正

2016/11/03 09:59

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -2,6 +2,6 @@
2
2
  ボタンが1回おされれたときにやるべき処理しか書いてはいけません。ボタンを1回おされたときにやるべきは、次の単語一つだけを選んで表示することだけです。では「次の単語って、何番目の単語のことなのか」をどうやって決めればいいのでしょうか?答えはフォームクラスにフィールドを定義してそこに「今何番目を表示しているか」を覚えておくことです。
3
3
 
4
4
  2. ボタンのイベントハンドラーで何をすべきでないか
5
- せっかくHoldDatasというメソッドを用意したのに、ボタンのイベントハンドラーでそれをよびだしてはダメです。一度しかやらない処理はこのフォームのロード時にやりましょう。HoldDatasをボタンのイベントハンドラーで呼び出してはいけないとなるとどうやってこのデータを参照すればよいのでしょうか?答えはFormのクラスにフィールドと自分で定義しそこに覚えておくことです。
5
+ せっかくHoldDatasというメソッドを用意したのに、ボタンのイベントハンドラーでそれをよびだしてはダメです。一度しかやらない処理はこのフォームのロード時にやりましょう。HoldDatasをボタンのイベントハンドラーで呼び出してはいけないとなるとどうやってこのデータを参照すればよいのでしょうか?答えはFormのクラスにフィールド定義しそこに覚えておくことです。
6
6
 
7
7
  解決方法にはいろいろなやりかたがありますが、最も素朴な答えだけを回答してみました。他にもやりかたはいろいろありますがまずはフィールドを使ったプログラミングについて考えてみてください。