タイトル : VB.NET テキストボックス 改行 ランダム表示 投稿日 : 2015/12/18(Fri) 16:32 投稿者 : ちんちろりん
VB2010にて以下のことを実現したいですが、思ったようにうまくいきません。 [ボタン1] [テキストボックス1] [テキストボックス2] [テキストボックス3] [テキストボックス4] [テキストボックス5] [テキストボックス6] [テキストボックス7] ボタン1は実行ボタン テキストボックス1には、改行で文字列が入力できる。 例えば、 あ い う え お か き く け テキストボックス2〜8にはテキストボックス1で書いた内容からランダムで1つ抽出し表示させる。 上の例だと、 [テキストボックス2]あ [テキストボックス3]い [テキストボックス4]う [テキストボックス5]え [テキストボックス6]お [テキストボックス7]か Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'エラーがあっても実行 On Error Resume Next 'テキストボックス1に入力される文字 Dim a() As String = {TextBox1.Text} '乱数の初期化 Randomize() 'テクストボックス1の改行の行数を数える Dim intLineCnt As Integer = TextBox1.Lines.Length 'テキストボックス2に全改行から1つを抽出し、表示 TextBox2.Text = a(Math.Floor(intLineCnt * Rnd())) 'テキストボックス3に全改行-1行から1つを抽出し、表示 TextBox3.Text = a(Math.Floor((intLineCnt - 1) * Rnd())) 'テキストボックス4に全改行-2行から1つを抽出し、表示 TextBox4.Text = a(Math.Floor((intLineCnt - 2) * Rnd())) 'テキストボックス5に全改行-3行から1つを抽出し、表示 TextBox5.Text = a(Math.Floor((intLineCnt - 3) * Rnd())) 'テキストボックス6に全改行-4行から1つを抽出し、表示 TextBox6.Text = a(Math.Floor((intLineCnt - 4) * Rnd())) 'テキストボックス7に全改行-5行から1つを抽出し、表示 TextBox7.Text = a(Math.Floor((intLineCnt - 5) * Rnd())) End Sub 改行で1列の文字として、認識させ、また、テキストボックス2〜7には重複した文字をいれたくないようにするのはどのようにすればいいのでしょうか。 |