C#
1string[] text2 = new string[] 2 { 3 "1","2","3","4","5","6","7", 4 }; 5//int index2=0; 6DialogResult result = MessageBox.Show("表示", 7 "選択", MessageBoxButtons.YesNo/*MessageBoxIcon.Question*/); 8 9 //何が選択されたか調べる 10 if (result == DialogResult.Yes) 11 { 12 //ここのコードが不安要素 13 for (var i=0;i<text2.Length;) 14 { 15 16 textBox1.Text = text2[i]; 17 18 i++; 19 } 20 } 21 else if (result == DialogResult.No) 22 { 23 //処理をしない 24 }
一応頭の中のイメージでは、これでFOR文で全要素をチェックして、テキストに1と表示されカウントアップして行くイメージなのですが、これは実際に1~7までテキストに表示されますか?
実際に動作させればいいのではないですか?
>>これは実際に1~7までテキストに表示されますか?
こちらが知りたい情報なのですが
今手元にpcが無く確認が難しいです。
この状態では単なるデバッグ依頼です。
ご自身で確認された後、分からない部分を質問されるのがよろしいかと思います。
たぶん表示するだけが目的ではなくて、表示させた上でユーザーの操作に応じて何かをしたいのですよね? であれば、何をしたいのか書いてください。
すみません。何かをしたいわけではなく、FOR文を使って配列を表示させる事が出来るのかと疑問に思い
質問しました。なので一応表示する事が目的としては近いです。
> FOR文を使って配列を表示させる事が出来るのかと疑問に思い
そうであれば、MessageBox を使う必要はなくて、TextBox だけでいいですよね。
前のスレッド https://teratail.com/questions/193397 で学んだことを思い出せばできるはずです。
>今手元にpcが無く
どういう形でコード提示したか分かりませんが、
そもそもコード実行できない環境にいて質問して回答をもらったとしても
結局実行することになるので、質問としてはあまり有用とはなりません。
実行して確認できるようになってからその結果を質問に追記してください。
以前、for文の書き方をお教えしましたが、更新式を別に書くのは癖でしょうか?
好みがあるのでなんとも言えませんが、一緒に書いたほうがトラブルが少ない気がします。
コード自体には不具合はないと思いますが、
Yes以外なら処理をしないというのであれば、else以降は必要ないとは思います。