View Full Version : بر نامه نویسی در vb .net
  
fahimeh 20
شنبه 12 اردیبهشت 1388, 10:03 صبح
سلام من میخواهم برنامه ای بنویسم راجع به فرمت ساعت (دقیقه:ساعت )که اگر کاربر ساعت را با این فرمت وارد نکرد پیغامی ارسال شود که من این برنامه را تا این حد تونستم بنویسم حالا همین برنامه هم کاری انجام نمیده اگه میشه برنامه را بخونین واشکالش و بگین .
Public Class Form1
 
Public module common 
Public Sub checksaat(ByVal saat As Integer, ByRef min As Integer)
TextBox1.Text = saat
TextBox2.Text = min
If saat Like "[!1-24,:],[!1-60]" Then
Throw New Exception("فرمت ساعت اشتباه است ")
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
checksaat = (TextBox1.Text)
cath as exeption
 
 
End Sub
End Module
End Class
morteza_261
شنبه 12 اردیبهشت 1388, 15:13 عصر
سلام
میتونی از این کد استفاده کنی:
If IsDate(TextBox1.Text) = False Then
MessageBox.Show(" لطفاً ساعت را با بصورت صحیح و با فرمت ""دقیقه:ساعت"" وارد نمایید", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Stop, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading)
End If
 
 
فقط یه اشکال که داره اینه که اگر با فرمت تاریخ هم بنویسیم خطا نمیده(مسیج باکس نشون داده نمیشه)
araelectronic@ymail.com
شنبه 12 اردیبهشت 1388, 19:10 عصر
با سلام
روشهای مختلفی میتونید استفاده کنید که راحتتریت آن استفاده از دو textbox است که میتوانید text box ها را محدود به عددهای ساعت و دقیقه بکنید که اگر خارج از آن محدوده بود پیغام بدهد.
راه دوم استفاده از یک textbox است و نوشتن تابعی برای کنترل آن که طول textbox و کنترل صحت عددهای وارد شده برای ساعت و دقیقه که باید از تابع mid کمک بگیرید
راه بعدی استفاده از masked textbox  است که فکر میکنم راه مناسبتری باشد.
 
موفق باشید
ACorvinus
یک شنبه 13 اردیبهشت 1388, 12:18 عصر
من جوابت رو داده بودم ولی گویا تایپیکت حذف شد .
Public Class Form1
    Private Function Check(ByVal Time As String) As Boolean
        Check = True
        Dim TimeArr() As String = Split(Time, ":")
        If TimeArr.Length <> 3 Then
            Return False
        Else
            If (Byte.Parse(TimeArr(0)) < 0) Or (Byte.Parse(TimeArr(0)) > 23) Then
                Return False
            ElseIf (Byte.Parse(TimeArr(1)) < 0) Or (Byte.Parse(TimeArr(1)) > 59) Then
                Return False
            ElseIf (Byte.Parse(TimeArr(2)) < 0) Or (Byte.Parse(TimeArr(2)) > 59) Then
                Return False
            End If
        End If
    End Function
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If Not String.IsNullOrEmpty(TextBox1.Text) Then
            If Check(TextBox1.Text) Then
                MessageBox.Show("Valid Time")
            Else
                MessageBox.Show("Not Valid Time")
            End If
        End If
    End Sub
End Class
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.