私はここの初心者で、vb2010を使用しています。
ここに私の問題があります。
この「 1a1:b2b:3c3 」のようなユーザー入力があった場合、私のプロジェクトはそれを受け入れる必要があります。しかし、ユーザーがこの「1a1b2b3c3」のような入力を行うと、形式は「XXX:XXX:XXX 」でなければならないというメッセージボックスが表示されます。事前に助けてくれてありがとう。
私はここの初心者で、vb2010を使用しています。
ここに私の問題があります。
この「 1a1:b2b:3c3 」のようなユーザー入力があった場合、私のプロジェクトはそれを受け入れる必要があります。しかし、ユーザーがこの「1a1b2b3c3」のような入力を行うと、形式は「XXX:XXX:XXX 」でなければならないというメッセージボックスが表示されます。事前に助けてくれてありがとう。
私はあなたのために非常に簡単な例を作成しました。あなたを正しい道に導くのに十分すぎるほどです。別の方法で行うこともできましたが、これでうまくいくと確信しています。MaxLength を使用して、ユーザーが少なくとも 9 文字を入力したことを確認し、そうでない場合は通知しました。テキストボックスのテキストをこれに渡す関数も作成し、先に進んでフォーマットします。ユーザーの時間を節約します...さらに、私が正しければ、とにかくユーザーが主に少なくとも9文字を入力することを確認する必要があるだけです...頑張ってください!
Public Class Form1
Private strValidatedText As String = String.Empty
Private blnValid As Boolean = False
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'Make sure user can only enter up to 9 values...
With txtInput
.MaxLength = 9
.TextAlign = HorizontalAlignment.Center
End With
End Sub
Private Sub btnValidate_Click(sender As Object, e As EventArgs) Handles btnValidate.Click
Dim strTextBox As String = txtInput.Text
strValidatedText = ValidateText(strTextBox)
Select Case blnValid
Case True
MessageBox.Show("It's valid! " & strValidatedText)
txtInput.Clear()
txtInput.Focus()
Case Else
MessageBox.Show(strValidatedText)
txtInput.Clear()
txtInput.Focus()
End Select
End Sub
Private Function ValidateText(ByVal strText As String)
Dim strNewText As String = String.Empty
If strText.Length = 9 Then
strNewText = (strText.Substring(0, 3) & ":" & strText.Substring(3, 3) & ":" & strText.Substring(6, 3))
blnValid = True
Else
strNewText = "There must be at least 9 characters in the textbox!"
blnValid = False
End If
Return strNewText
End Function
End Class
また、「Select Case blnValid」のその時点で、グローバルであるため、その文字列で好きなことを行うことができます...
MrCodeXeR
次のコードで試してみましたが、 で正常に動作しVB 2010
ます。変数宣言の前に次のコードを使用してください。
If TextBox1.Text = "" Then 'check if the textbox has a value
MsgBox("Please Enter ID Number")
Return 'will return to the app
ElseIf Not IsNumeric(TextBox1.Text) Then 'check if the entered value is a number
MsgBox("ID Must Be A Number")
Return