C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: VBについて


(過去ログ 113 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■67043 / inTopicNo.1)  VBについて
  
□投稿者/ ぱぴぱぴ (1回)-(2013/06/26(Wed) 00:41:13)

分類:[VB.NET/VB2005 以降] 

Private number As Integer
Private rows As Integer
Private columns As Integer



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For i As Integer = 1 To 3
AddHandler Me.Controls("TextBox" & i).TextChanged, AddressOf TextBox_TextChanged
Next
End Sub

Private Sub TextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

If System.Text.RegularExpressions.Regex.IsMatch(CType(sender, TextBox).Text, "[^0-9]") Then
MessageBox.Show("数字で入力してください", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)

With CType(sender, TextBox)
.Text = .Text.Substring(0, .Text.Length - 1)
.SelectionStart = .Text.Length
End With
End If
Dim cnt As Integer




If Integer.TryParse(TextBox1.Text, cnt) And Integer.TryParse(TextBox2.Text, cnt) And Integer.TryParse(TextBox3.Text, cnt) Then
For i = 1 To cnt

Dim tb As TextBox = New TextBox()
tb.Name = "tb" + i.ToString()
Me.Controls.Add(tb)
tb.Top = (i - 1) * 28 + 55 * i
tb.Left = 30
tb.Width = 25
Next
End If

End Sub

TextBox1、TextBox2、TextBox3全てに数字が入った場合それだけ分のテキストボックスを表示させたいのですがうまくいきません。
例えば 3 3 3と入力されれば
3×3×3分のテキストボックスを表示させたいです。
引用返信 編集キー/
■67044 / inTopicNo.2)  Re[1]: VBについて
□投稿者/ panic (1回)-(2013/06/26(Wed) 02:27:32)
visibleプロパティ
引用返信 編集キー/
■67045 / inTopicNo.3)  Re[2]: VBについて
□投稿者/ こりんご (11回)-(2013/06/26(Wed) 09:28:55)
2013/06/26(Wed) 09:45:15 編集(投稿者)

>If Integer.TryParse(TextBox1.Text, cnt) And Integer.TryParse(TextBox2.Text, cnt) And Integer.TryParse(TextBox3.Text, cnt) Then
>For i = 1 To cnt
テキストボックス1〜3の値を何故同じ変数に入れているのかな?

上手くいかないって点については、
希望する結果と現在の状況説明が重要なのでは?

追記:
あ、もしかして同じ変数使っているせいとか?
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -