اذهب الي المحتوي
أوفيسنا

ما الرابط بين الـ control و الـ label التابع له


أبو هادي

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

السلام عليكم

النموذج عند التصميم بعض الـ controls لها labels تتبعها ، فلو قمنا بتحريكها سوف يتحرك معها الـ label حيثما تذهب .

السؤال :

ما هو الرابط بينهما ، وكيف يتم التعرف عليه ، وهل يمكن ربط label منفصل مع كنترول تم حذف الـ label الأصل التابع له .

اسمحوا لي لاستخدام الأسماء الإنجليزية حيث لا أعرف المسميات بالعربي وكثيرا أترجمها بنفسي لأسهل على القراء ولكني في آخر مشاركة لي أخطأت في الترجمة ولا أحب أن أكرر الخطأ ، كما أني الآن بالذات لم أستطع أن أترجم كلمة label ولا أدري ماذا حصل بذاكرتي :) فعذرا .

تحياتي .

  • Thanks 1
رابط هذا التعليق
شارك

مبدأيا أعتقد أن Label = تسمية

فأنا أيضا أستخدم النسخة الانجليزية

و صراحة لم أفكر فى هذا الموضوع

لأن أول ما أفعله فى النموذج هو اختيار جميع التسميات المرتبطة بالكائنات ثم

Cut

paste

لفصلها عن كائناتها لأنها تتعبني عند التنسيق

أما عن وجود علاقة برمجية بينها

فلا يخطر ببالي حاليا سوي أن القيمة الافتراضية لخاصية الcaption لل label تكون هي اسم الكائن المرتبط متبوعة ب ":"

و أنه يمكن استخدام خاصية AutoLabel لتفعيل أو ابطال انشاء lable مع ال controls الجديدة

( لتفعيل او ابطال انشاء تسميات بصورة الية مرتبطة بالكائنات الجديدة )

مع تحياتي

رابط هذا التعليق
شارك

الأخ الكريم ابو هادي:

للوصول الى خاصية AutoLabel ....

1 - نقوم بالضغط على عنصر التحكم بصندوق الأدوات(Control Box) وليكن الأداة مربع النص(TextBox)

2 - قبل ان نقوم بوضع الأداء على النموذج نقوم بفتح نافذة الخصائص ... وبعد ذلك تجد الخاصيتين AutoLabel والخاصية Add Colon

AutoLabel.JPG

رابط هذا التعليق
شارك

الطريقة الأولي

و هي تغيير تنسيق مربع نص أو أي كائن آخر ، و من ضمن ذلك حذف تسميته

ثم نختار من قائمة FORMAT

SET CONTROL DEFAULTS

اي ان الكائنات التي ستضاف من نوع هذا الكائن ، ستكون لها خصائص مماثلة لهذا الكائن الذي جعلناه افتراضيا

فاذا حذفنا تسميت مربع نص و جعلنا لون الخلفية أصفر قبل جعله الافتراضي ، فستكون كل مربعات النص التي سننشأها بعده خلفيتها صفراء و بدون تسمية

و هناك طريقة أخري

من وضع التصميم لنموذج أو تقرير

نضغط علي ايقونة ال CONTROL BOX رقم 3 فى الرسم

ثم نختار الكائن المراد وضع خصائص افتراضية له

و ليكن مربع النص مثلا (رقم 2 فى الصورة )

و نختار خصائص (رقم 1 )

فتظهر لنا لاخصائص الافتراضية لمربعات النص التي ستضيفها لاحقا و من ضمنها خاصية AUTOLABEL : أي يتم الحاق تسمية به عند اضافة كائن من هذا النوع لاحقا

و يمكن تغيير أي خصائص أخري مثل التنسيق مثلا

فيكون ما نختاره هنا هو الخصائص لكل مربعات النص التي سنضيفها لاحقا ، فنوفر بذلك الوقت فى تنسيقها

و كذلك الحال بالنسبة لباقي الكائنات

مع تحياتي

post-13-1064265602.jpg

رابط هذا التعليق
شارك

السلام عليكم

شكرا لأخي امير عاطف

وشكرا لأخي محمد طاهر

ولا يزال السؤال الأصل قائما .

العلاقة البرمجية بينهما .

تحياتي .

تم تعديل بواسطه أبو هادي
رابط هذا التعليق
شارك

للأسف مازلت لم أعثر الا علي أن القيمة الافتراضية لخاصية الcaption لل label تكون هي اسم الكائن المرتبط متبوعة ب ":"

و يمكن استغلال هذه العلاقة طالما لم نغير قيمة الcaption أو اسم الكائن . و هذا طبعا يضعفها كخاصية يمكن الاعتماد عليها

-----------------

و استكمالا لموضوع القيمة الافتراضية ، فهذا كود من التعليمات عدلته قليلا الي التعامل مع مربع نص و تلوينه و جعله المربع الافتراضي ، أي أن خصائصه تصبح هي الخصائص الافتراضية لأي مربع نص فى النموذج الجديد

أي تطبيق لموضوع الخصائص الافتراضية للكائنات بالكود

أي الكود ينشيء نموذج جديد ، و فيه ينشيء مربع نص بخصائص معينة ، ثم يجعله مربع النص الافتراضي بعد تغيير خصائص لون الخلفية و الخط فيه

فتصبح هذه الخصائص مطبقة علي كل مربعات النص التي سيتم انشاءها فى النموذج

و طبعا الكود قابل للتطبيق علي باقي الكائنات

Sub SetDefaultProperties()

    Dim frm As Form, ctlDefault As Control, ctlNew As Control


    ' Create new form.

    Set frm = CreateForm

    ' Return Control object representing default command button.

    Set ctlDefault = frm.DefaultControl(acTextBox)

    ' Set some default properties.

    With ctlDefault

        .BackColor = RGB(255, 255, 0)

        .FontWeight = 700

        .FontSize = 12

    End With

    ' Create new command button.

    Set ctlNew = CreateControl(frm.Name, acTextBox, , , , 500, 500)

    ' Set control's caption.

    'ctlNew.Value = "officena"

    ' Restore form.

    DoCmd.Restore

End Sub

DefaultControl.rar

رابط هذا التعليق
شارك

السلام عليكم

وجدتها أخي محمد :)

MsgBox Me.Text1.Controls(0).Name, , Me.Text1.Controls.Count

هذا الكود يعرض لنا إسم الـ label التابع له ويعرض لنا رقم واحد إذا كان له تسمية أو صفر في حالة عدم وجود تسمية .

تحياتي .

رابط هذا التعليق
شارك

جميل جدا :) :yess:

يبدو أنه لايوجد شيء فى الاكسس الا و لو حل :lol:

و انا شخصيا متشوق لمعرفة ثمرتها ، حيث أن تخيلها صعب الي حد ما :pp:

رابط هذا التعليق
شارك

السلام عليكم

لإنشاء label تابع للـ control :

    Set ctlNew = CreateControl(frm.Name, acTextBox, , , , 1000, 500)

    ctlNew.Name = "txtEmpName"

    Set ctlNew = CreateControl(frm.Name, acLabel, , ctlNew.Name, "Emp Name: ", 100, 500)

تحياتي .

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information