الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

العودة إلى نفس الحقل بعد تحديثه

بدأه ramynassif في 2 ديسمبر 2014 · 6 رد · 1,083 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أعزائى الكرام هى ممكن تكون حاجة بسيطة ولكن عقلى وقف فى التفكير بها فأرجو مساعدتكم

فى داخل الفورم عند حقل معين بعد الكتابة بداخلة  واستخدام "أنتر" يعود مره أخرى له أما  إذا كان فارغاً بدون بيانات يذهب عادى إلى الحقل التالى بعد "أنتر"

أرفق مثال للتوضيح أكثر

وشكراً لمد يد المساعدة

Tab field Stop.rar

#2

وعليكم السلام :)

 

ما تستطيع ان ترجع له مباشرة ، لازم تروح لحقل آخر ثم ترجع له :

Private Sub Text1_AfterUpdate()

    'DoCmd.GoToControl ("Text1")
    If Len(Me.Text1 & "") <> 0 Then
        Me.Text2.SetFocus
        Me.Text1.SetFocus
    End If
    
End Sub

جعفر

1
#3

أخى العزيز جعفر أشكرك على سرعة تفاعلك معى أنا أيضاً فكرت فى هذا ولكن أنا مستغرب لايوجد أى حل أخر 

#4

حياك الله :)

 

 

ramynassif كتب:

ولكن أنا مستغرب لايوجد أى حل أخر 

 

الرابط التالي يعطينا تسلسل الحدث بالنسبة للنموذج ، والكائنات في النموذج ، والسجلات في هذه الكائنات:

http://office.microsoft.com/en-za/access-help/order-of-events-for-database-objects-HP005186761.aspx

 

 

لو انك فكرت في الموضوع ، لوجدت ان ما يفعله اكسس صحيح:

1. الحدث الذي تم استعماله (او اي حدث آخر) يحصل عندما يتم تغيير القيمة ، ولكننا لم نغادر الحقل ،

2. والطريقة الوحيدة التي يمكننا ان نعود للحقل الذي كنا ، هو عندما نفارق هذا الحقل ونذهب الى حقل آخر (الى الحقل التالي مثلا) ،

لذا ، يمكننا استخدام هذا الكود:

Private Sub Text2_Enter()
    
    If Len(Me.Text1 & "") <> 0 Then
        Me.Text1.SetFocus
    End If

End Sub

فبمجرد ان ندخل الحقل التالي (اي نكون قد خرجنا من الحقل الاول) ، فالكود يستطيع ان يرجع الى الحقل الاول (واذا لاحظت ، ستجد باننا استعمالنا طريقة الكود في مشاركتي الاولى) ، حيث:

1. ذهبنا الى حقل آخر (عن طريق زر Tab او Enter (اي ليس بالكود)،

2. ثم رجعنا الى حقلنا السابق بالكود  :)

 

 

جعفر

تم تعديل هذه المشاركة بواسطة jjafferr في 2 ديسمبر 2014 في 23:16

#5

وطريقة اخرى :)

 

اذا كانت توجد قيمة في الحقل Text1 ، فلا تخرج من الحقل اصلا:

Private Sub Text1_Exit(Cancel As Integer)

    If Len(Me.Text1 & "") <> 0 Then
        Cancel = True
    End If
    
End Sub

جعفر

1
#6

طيب أستاذ جعفر أحنا كده ممكن قربنا نوصل لحل 

هل فى إمكانية بعد استخدام الكود الأخير عند الضغط على زر Tab ينتقل إلى الحقل التالى

أما مع زر Enter لا يستجيب 

مواضيع مشابهة