PDA

View Full Version : مشکل پیغام lostfocus



fzarei
دوشنبه 24 دی 1386, 15:20 عصر
با سلام
فرم من شامل چند textbox است که برای وارد کردن اطلاعات در جدمل از آن استفاده می کنم
textbox1 شامل فیلد اصلی جدولم می باشد که اولا نباید خالی باشد دوما اطلاعات تکرارای در آن وارد نگردد که این شرطها با برنامه زیر که در LostFocus نوشته ام چک می گردد اما مشکل اینجاست که زمانی که فرم را باز می کنم اگر چیزی ثبت نکنم و آنرا با کلید خروج که بر روی فرم طراحی کرده ام ببندم پیغام ("نام گروه فوق ثبت نشده است" بر روی صفحه ظاهر می گردد لطفا برای رفع این مشکل مرا راهنمایی کنید
Imports System.Data
Imports System.Data.OleDb
PublicClass FormS_F


PrivateSub TextBox1_LostFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles TextBox1.LostFocus
Dim con AsNew OleDbConnection
Dim cmd AsNew OleDbCommand
Dim dr As OleDbDataReader
con.ConnectionString = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\QCC1386\qc.mdb;Persist Security Info=False")
con.Open()
cmd.CommandText = "select groupname,code,headname,tedad,compani,area,bakhsh from sabt where(groupname = '" & TextBox1.Text & "')"
cmd.Connection = con
dr = cmd.ExecuteReader
If dr.HasRows Then
dr.Read()
TextBox2.Text = dr("code")
TextBox3.Text = dr("headname")
TextBox4.Text = dr("tedad")
TextBox5.Text = dr("compani")
TextBox6.Text = dr("area")
TextBox7.Text = dr("bakhsh")
TextBox8.Focus()
Else
MessageBox.Show("نام گروه فوق ثبت نشده است")
TextBox1.Focus()
Me.TextBox1.Text = ""
EndIf
con.Close()
dr.Close()
EndSub

saghari
دوشنبه 24 دی 1386, 16:01 عصر
با سلام
با فرض اینکه دکمه button1 دکمه خروجت باشه در کد lostfocus از شرط زیر استفاده کن

If not Me.Button1.Focused Then
...
End If
در و

fzarei
سه شنبه 25 دی 1386, 09:04 صبح
با سلام
میشه لطفا بیشتر توضیح بدید که جمله دورن شرط رو چی بذارم ؟

Dariuosh
سه شنبه 25 دی 1386, 18:53 عصر
تو ایونت کیلیک کلید خروجت اینو بنویس


RemoveHandler TextBox1.LostFocus, AddressOf TextBox1_LostFocus

fzarei
چهارشنبه 26 دی 1386, 09:07 صبح
با سلام
کدی را که گذاشته بودید را در ایونت کیلیک دکمه خروج نوشتم ولی باز هم MessageBox نمایش داده می شود و فرم بسته نمی شود . ممنون میشم راه حل دیگه ای بدید

Dariuosh
پنج شنبه 27 دی 1386, 19:28 عصر
آره چون ایونت Lost Focus تکست باکس قبل از کلیک باتن فایر میشه اون کد به درد نمیخوره

Saghari درست میگه کل کدو تو اون شرط قرار بدی حل میشه

fzarei
دوشنبه 01 بهمن 1386, 15:00 عصر
با سلام
من میخواهم به محض پر کردن نام گروه در صورت نبودن پیغام بدهد نه بعد از پر کردن کل فیلدها و زدن دکمه خروج . لطفا مرا راهنمایی کنید که چطور این مشکل را حل کنم آیا می توانم این دستورات را در ایونت دیگری بنویسم که با این مشکل مواجه نشوم؟