掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
クラスモジュールとコレクションを使ったゲームを作りたいですけど.. (ID:104812)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
あんちゃんさま、返信ありがとう御座います。 アドバイス通り自分なりにやってみたのですが、あんちゃんさまのプログラムだと、縦に数字が並んでいき一定の数(3)になると、次の列に数字が並ぶようになってるみたいですが、実際は3の次に1個だけが横に並んで、次の数字からは一列目の下に並んでしまいます..... 縦マス3、横マス3と指定した場合 70 56 58 45 88 34 22 14 35 こんな感じになってしまいます..... 今度は自分なりにあんちゃんさんのプログラムを改善して、横列に数字を並べていき、一定の数(テキストボックスに入力された横マスの数)になったら、下の列に改行していく方法にしました。そこで問題が発生しました。 例えば縦3、横3にした場合、最初の横マス3は(i)から取得できるのですが、次の3個目(プログラム上は6)の取得が出来ません。つまり2列目の折り返しが出来ないのです。 70 58 56 34 78 24 13 59 23 となってしまいます..... この場合、どういうふうにすればいいのでしょうか?? プログラムは以下のとうりです。 Private Sub Command1_Click() Dim intNum As Integer 'Dim i As Integer Dim 出力用 As String If Not IsNumeric(Text1) Then MsgBox "Please enter a number for the raws", vbOKOnly, "error" Exit Sub End If If Not IsNumeric(Text2) Then MsgBox "Please enter a number for the column", vbOKOnly, "error" Exit Sub End If If (Val(Text1.Text) <= 4) And (Val(Text2.Text) <= 5) Then mintLaw = Val(Text1.Text) mintCol = Val(Text2.Text) intNum = mintLaw * mintCol Dim ary(1 To 99) As Integer Dim i As Integer, j As Integer, Temp As Integer ' 初期化 For i = 1 To 99 ary(i) = i Next i ' シャッフル For i = 1 To intNum j = Int(Rnd() * 99) + 1 ' 数値をひとつ選ぶ '入れ替え Temp = ary(j) ary(j) = ary(i) ary(i) = Temp If i = mintLaw Then 出力用 = 出力用 & ary(i) & vbCrLf Else 出力用 = 出力用 & ary(i) & " " ' " "はスペース End If Label1.Caption = 出力用 Next i Else MsgBox "The number is error" Exit Sub End If End Sub
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.