اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر (معدل)

السلام عليكم

نظرياً .. هى مشكلة إزعاج بصري لمن يهوى الناحية الجمالية ، لكن لا تأثير  على الوظيفة

عند تحميل النموذج يظهر أولاً محتوى مربع نص الـ   Code  ثم بعد ثانية أو أقل يظهر الباقى

p_3968kz26n1.jpg

 

ثم

p_3968l6txn1.jpg

المطلوب تكرماً التعديل فى كود تحميل النموذج ليكون إظهار جميع الحقول بصرياً معاً

مع الاحتفاظ بوضع مشيرة الكتابة فى حقل الـ Code  كما هو موجود بالنموذج افتراضياً .

أرفقت الجزء المستهدف من التطبيق بالمرفقات ..  لإظهار ما شرحته والعمل عليه

تحياتي للجميع

db1.mdb

تم تعديل بواسطه أحمد العيسى
قام بنشر

لجأت للذكاء الصناعي بأسئلتي  (Google) بعد أن تأخر الرد من حضراتكم

وكان الحل مرضياً بنسبة 90%  من خلال تلك الأكواد التى نقلتها عنه

كما أنه قد قام بحل رعشة الوقت من خلال حذف الثواني من الظهور

Private Sub Form_Load()
    UpdateClock
    Me!LblDateView.Caption = Format(Now, "yyyy /mm /dd")
    Me.wrship.RowSource = ""
    Me.social.RowSource = ""
    ' 1. التركيز أولاً على زر الخروج لإظهار النموذج بالكامل
    Me.cmd_Exit.SetFocus
    ' 2. تشغيل المؤقت بعد نصف ثانية
    Me.TimerInterval = 100
End Sub

Private Sub Form_Timer()
    Static blnDone As Boolean
    ' ينفذ هذا الجزء مرة واحدة فقط بعد نصف ثانية
    If Not blnDone Then
        blnDone = True
        ' إعادة التركيز إلى مربع النص Code
        Me.Code.SetFocus
        ' تظليل النص الموجود بداخله بالكامل
        If Len(Me.Code & "") > 0 Then
            Me.Code.SelStart = 0
            Me.Code.SelLength = Len(Me.Code)
        End If
        ' إعادة المؤقت إلى ثانية واحدة لعمل الساعة بانتظام
        Me.TimerInterval = 1000
    End If
    UpdateClock
End Sub

Private Sub UpdateClock()
    Dim strTime As String
    ' تنسيق الوقت واستبدال AM بـ ص و PM بـ م
    strTime = Format(Time, "hh:nn AM/PM")
    strTime = Replace(strTime, "AM", "ص")
    strTime = Replace(strTime, "PM", "م")
    ' التحديث فقط عند تغير الوقت لمنع الاهتزاز
    If Me!LblClockView.Caption <> strTime Then
        Me!LblClockView.Caption = strTime
    End If
End Sub

 

قام بنشر

أهم الأسباب (المرتبطة بأكسس) لثقل النموذج سببين

- حجم البيانات التي يتم تحميلها مع النموذج (يقصد بالبيانات هنا إما بيانات الجداول أو بيانات كائنات ذات حجم كبير كالصور مثلاً)

- حجم التعليمات البرمجية خلف النموذج

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

الحل الآخر وهو أصعب قليلاً وفيه لايتم ربط النموذج بجدول أو إستعلام بل سيحتوي على عناصر تحكم غير منضمة (أي غير مرتبطة بأي حقول) وعلى أن يتم تعبئتها بالبيانات عن طريق مجموعة سجلات DAO أو ADO بإستخدام الكود وهذه عملية تحتاج للكثير من العمل ولكنها تنتج لنا نماذج خفيفة

نفس الشيئ للسبب الثاني فيوجد له حلين تختلف بإختلاف أهمية الوظيفة التي يقوم بها الكود ويتم تحديد هذه الأهمية عن طريق الإجابة على هذا السؤال (لو لم يكن هذا الكود موجوداً  فهل ستتأثر ألية العمل والإجراءات التي تتعامل مع البيانات ؟) 

فإذا كانت الإجابة أنه لن يكون للكود أي تأثير فالأفضل هو الإستغناء عنه

أما لو كان لهذا الأمر وظيفة ستؤثر على عملنا فنرى إذا ما كان بالإمكان تحويل هذا الكود إلى دوال عامة وإستدعائها من الحدث مباشرة

مثال بسيط لنفترض أن وظيفة الزر (إضافة سجل جديد) هي وظيفة هامة ومؤثرة عندها يمكننا أن نقوم بإنشاء دالة عامة داخل وحدة نمطية قياسية ونسميها بإسم AddNewRec وستتغير طريقة إستدعائها كما بالصورة

Untitled3.png.30d411180c448c5366ca0083aadbe45c.png

في الشكل الأول يكون الكود خلف النموذج أما الشكل الثاني فيتم إستدعاء دالة عامة خارج النموذج ... في الأخير لن يتبقى خلف النموذج إلا الحد الأدنى من التعليمات البرمجية المطلوبة للعمل

إلى هنا تكون قد تناولنا أهم الأسباب المرتبطة بأكسس (من وجهة نظري) وطريقة التعامل معها (من وجهة نظري أيضاً :wub:) ولكن تتبقى أسباب أخرى تكون مرتبطة بإمكانيات الأجهزة فكلما كانت مواصفات الجهاز أضعف فستظهر هذه المشكلة بشكل ملحوظ أكثر

عموماً قمت بتعديل المثال الخاص بك عن طريق إضافة نموذج لتحديد معيار لتصفية النموذج المطلوب وأضفت نسختين من نموذج الموظفين الأول سيكون مطابق للأصلي ولكن مع بيانات مفلترة والآخر مع بيانات مفلترة بالإضافة إلى الإستغناء عن وظيفة الساعة (فأنا أرى أنها ليست مرتبطة بالعمل وغير مؤثرة بل بالعكس فحدث Timer هو من أسواء الأحداث التي يمكن التعامل معها ويفضل اللجوء إليه للضرورات القصوى)

أريد منك تجربة فتح كل نموذج من النماذج الثلاثة والتحقق من الفارق في الأداء (يفضل أن لا يتم فتح أي نموذج إلا بعد إغلاق الأول ليتم الفحص في نفس الظروف لكل واحد) وأعلمنا بالنتيجة

تحياتي

 

 

 

db12.mdb

قام بنشر

أشكرك أخى منتصر على تفضلك بالرد بكل هذه الإستفاضة

أعتقد أن الموضوع أكثر تعقيداً

وهذا الرأي كان بتركيز كبير من شرح واقتراحات جوجل

فهو مرتبط إلى حد ما بترتيب الجدولة لمحتوى أي نموذج

فإذا كان الأسبقية فى الترتيب لعنصر Lable  فسوف يكون أفضل من عنصر Text box

حينها لن يظهر وقتها رسم تحميل النموذج بهذه الاختلافات بين عناصره

وهذا ما فعلته فى نموذج آخر بأن جعلت ترتيب الجدولة لـ زر خروج Lable

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information