سلام دوستان من چه جوری می تونم از کلید اینتر به جای کلید تب استفاده کنم
و وقتی که اندکس به تکس باکس بعدی رفت رنگ زمینه تکس باکس هم تغییر کنه
مثل برنامه های بانک ها اگه نمومه کدی بزارید ممنون می شم
سلام دوستان من چه جوری می تونم از کلید اینتر به جای کلید تب استفاده کنم
و وقتی که اندکس به تکس باکس بعدی رفت رنگ زمینه تکس باکس هم تغییر کنه
مثل برنامه های بانک ها اگه نمومه کدی بزارید ممنون می شم
دوست عزیز از کد زیر استفاده کنید
اصولا وقتی وارد یک فیلد می شوید GotFocus اجرا می شود که به معنی کردن Focus است و وقتی هم که از فیلد خارج می شوید LostFocus اجرا می شود که به معنی از دست دادن Focus است. پس شما باید وقتی وارد شدید رنگ را تغییر و وقتی خارج شدید رنگ را به حالت اول برگردانید.
Private Sub TxtCode_GotFocus()
TxtCode.Backcolor = &HC0FFC0
End Sub
Private Sub TxtCode_LostFocus()
TxtCode.Backcolor = vbWhite
End Sub
برای اینکه بجای Tab از Enter استفاده کنید هم از کد زیر استفاده کنید:
Private Sub Nam_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyUp Then Add.SetFocus: Exit Sub
If KeyCode = vbKeyDown Or KeyCode = vbKeyReturn Then Candid.SetFocus: Exit Sub
End Sub
جهت توضیح عرض کنم که در این کد شما کلیدهای فشار داده شده را بررسی می کنید اگر Enter یا کلید پائین باشد به فیلد بعدی یا هر جا که خواستید می روید و برای کلید بالا هم همینطور می توانید به فیلد قبلی یا محل دیگری بروید
موفق باشید.
امیر
سلام
با اجازه OCTAGON عزيز نمونه ايندكسي رو هم مي زارم
ابتدا چند تا TextBox به نام txt و انديس دار رو فرم بزاريد و بعد كدهاي زير رو Paste كنيد
تو اين نمونه با كليد Enter به جلو و با كليد Shift+Enter به عقب حركت مي كنه و تعداد TextBox ها هم دلخواه هست
Private Sub txt_GotFocus(Index As Integer)
txt(Index).BackColor = vbYellow
End Sub
Private Sub txt_LostFocus(Index As Integer)
txt(Index).BackColor = vbWhite
End Sub
Private Sub txt_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyReturn
KeyCode = 0
If Shift = 0 Then
If Index < txt.Count - 1 Then txt(Index + 1).SetFocus Else txt(0).SetFocus
ElseIf Shift = vbShiftMask Then
If Index > 0 Then txt(Index - 1).SetFocus Else txt(txt.Count - 1).SetFocus
End If
End Select
End Sub
اگر من و شما هر كدوم يك چيز ياد داشته باشيم و به هم ياد بديم، حالا هر كدوم دو تا چيز ياد داريم !http://www.ArminaCo.com
در باره سوال اولتون که ساده است . شما کافیه در رویداد keypress تکست باکستون کد زیر رو بنویسید:
if keyascii=13 then sendkeys"{TAB}"
درباره سوال دومتون هم باید بگم در این باره داره یه ocx درست می کنم که یکی از قابلیتهاش همینه. به محض اینکه کامل شد توی سایت آپلودش می کنم.
به این پست هم سر بزن ببین به دردت می خوره؟
https://barnamenevis.org/showthread.php?t=74817