24-06-13, 03:58 AM
السلام عليكم...
ليس لدي VB الآن، و لكن أعتقد أن التعديلات التالية قد تفي بالغرض:
1. اترك كود الحدث WillMove كما هو.
2. احذف جملة movv = False من الحدث MoveComplete.
3. كود الحدث Change لمربعات النص يكو كالتالي:
* حتى لو نجح هذا الكود - و أرجو أن ينجح - فإن هناك اعتبار آخر. فالحدث WillMove لا يحدث فقط عند الانتقال من سجل إلى آخر عن طريق الـ ADO Control أو بأوامر مثل MoveNext أو MoveLast، و إنما أبضاً عند إضافة سجل جديد (الانتقال إلى السجل الجديد) أو عند الحذف (الانتقال إلى السجل التالي عير المحذوف). و لهذا أعتقد أن عليك التعامل مع البارامتر adReason في الحدث WillMove حيث يبين هذا البارامتر سبب الانتقال إلى سجل آخر.
نرجو الاستفادة و السلام.
ليس لدي VB الآن، و لكن أعتقد أن التعديلات التالية قد تفي بالغرض:
1. اترك كود الحدث WillMove كما هو.
2. احذف جملة movv = False من الحدث MoveComplete.
3. كود الحدث Change لمربعات النص يكو كالتالي:
كود :
If movv Then
movv = False
Else
cmdCancel.Visible = True
cmdUpdate.Visible = True
End If* حتى لو نجح هذا الكود - و أرجو أن ينجح - فإن هناك اعتبار آخر. فالحدث WillMove لا يحدث فقط عند الانتقال من سجل إلى آخر عن طريق الـ ADO Control أو بأوامر مثل MoveNext أو MoveLast، و إنما أبضاً عند إضافة سجل جديد (الانتقال إلى السجل الجديد) أو عند الحذف (الانتقال إلى السجل التالي عير المحذوف). و لهذا أعتقد أن عليك التعامل مع البارامتر adReason في الحدث WillMove حيث يبين هذا البارامتر سبب الانتقال إلى سجل آخر.
نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
