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

اريد ان اظهر عدد معين من Lables دون انشائهم يعني بالكود

مغلق
بدأه todayoryesterday@hotmail.com في 8 أبريل 2007 · 8 رد · 918 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اريد ان اظهر عدد معين من الليبول دون انشائهم يعني بالكود

برجااااااااااااااا لو سمحتوووووووو تعبت من البحث :unsure:

#2

بكل بساطة قم بانشاء مصفوفة ادوات اولا قم بانشاء ليبل جديد و اذهب الى ال properties الخاصة به و ضع Index تساوي 0 ثم في الكود قم بكتابة التالي :

Load Label1(1)
Label1(1).Visible = True
Label1(1).Top = Label1(0).Top + 500
Label1(1).Caption = "I'm new one"
#3

الأخ الفاضل ...

راجع الموضوع: كيف أستطيع اضافة أداة على الفورم برمجياً

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

كما يمكنك إضافة Label برمجياً بأستخدام:

	Dim lblName As Label

	Set lblName = Me.Controls.Add("VB.Label", "lblName")
	lblName.Caption = "My Label"
	lblName.Left = 100
	lblName.Top = 100
	lblName.Visible = True

شكراً

Eng. Usama El-Mokadem

Nothing is impossible, the word impossible itself says that: I M - Possible

#4

اد ايه كنت محتاج كود زى ده

مع الشكر والتقدير

ONLY GoD CaN JuDGe mE

#5

انا لي سؤال بهذا الشأن

اذا كنت اريد 20 ليبول

كيف يتم ذلك؟

#6

السلام عليكم ورحمة الله وبركاته

الحقيقة الجواب على سؤالك يا أخ M. Attef موجود في رد الأخ Ayoub JAMAL EL IDRISSI جزاه الله خيراً

وأرجوا أن يسمح لي بالرد وذلك كما يلي :

Dim i As Long 
For i = 1 To 20
Load Label1(i)
Label1(i).Visible = True
if i <> 1 then Label1(i).Top = Label1(i-1).Top + 500
Label1(i).Caption = "This is Label" & i
Next i

أو إذا أردت أيضاً الإجابة موجودة في رد الأخ الفاضل المهندس أسامة و ذلك كما يلي :

Dim lblName(20) As Label
Dim i as Long
For i = 1 To 20
	Set lblName(i) = Me.Controls.Add("VB.Label", "lblName")
	lblName(i).Caption = "My Label" & i
If i <> 1 Then
	lblName(i).Left =  lblName(i-1).Left + 100
	lblName(i).Top = lblName(i-1).Top + 100
Else
 lblName(i).Left = 100
 lblName(i).Top = 100
End If
	lblName(i).Visible = True
Next i

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

أما الطريقة الثانية فهي أفضل من الطريقة الأولى وذلك لعدم حاجتها لوجود مثل هذه المصفوفة كما أعتقد أنا ميزة إضافة الأدوات في زمن التشغيل برمجياً دون وجود مصفوفة موجودة مسبقاً لم تكن موجودة قبل الإصدار السادس من نسخة Visual Basic

لمزيد من المعلومات يمكنك مراجعة كتاب Mastering Visual Basic 6.0 وتجد هذه المعلومة موجودة في الفصل الأول من الكتاب الذي يحمل عنوان "الفرق بين هذا الإصدار و الإصدارات السابقة".

وشكراً لكم.

أعوذ بالله من الشيطان الرجيم

قل إنّ صلاتي و نسكي و محيّاي و مماتي لله رب العالمين

صدق الله العظيم

#7

اخي لقد قمت بتجربة الكود ولكن تظهر لي خطأ

There is already a control with the name 'lblName'
#8

الأخ الفاضل ...

هذه الرسالة تظهر لك لأنك خصصت نفس الأسم للجميع، جرب أستخدام الكود التالى:

	Dim lblName(20) As Label
	Dim n As Integer

	For n = LBound(lblName) To UBound(lblName)
		Set lblName(n) = Me.Controls.Add("VB.Label", "lblName" & n)
		lblName(n).Caption = "My Label " & n
		lblName(n).Left = 100
		lblName(n).Height = 200
		lblName(n).Top = n * 200
		lblName(n).Visible = True
	Next

شكراً

Eng. Usama El-Mokadem

Nothing is impossible, the word impossible itself says that: I M - Possible

#9

الله يجزيكم الخير اخوتي الكرام

و انت اخي علاء اشكر لك هذا الشرح المبسط

هذا الموضوع مغلق.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…