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

مشكلة في إنشاء مصفوفة

مغلق
بدأه reg_hack في 9 يوليو 2007 · 17 رد · 1,173 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

في الكود الظاهر تم إنشاء عدد 10 لايبل بشكل أفقي ... المشكلة عندما أريد أن أظهر الليبل بشكل أعمدة وصفوف حسب إحداثيات أنا أدخلها له

يعني : - عدد الصفوف 5

- عدد الليبل في كل صف = 10

ويكون كمدخل في الفورم وليس في الكود

أرجو إفادتي ... مع إن جميع الإستفسارات التي تمت من جهتي لم يتم الرد عليها فأرجو أن لا يخيب ظني في أعضاء هذا الموقع ...

بإمكانكم وضع هذا الكود في command ورؤية النتيجة

    Dim n As Integer
    Dim lblName(10) As Label
 On Error Resume Next
        For n = 0 To 10
        Set lblName(n) = Me.Controls.Add("VB.Label", "lblName" & n)
        s = s + 1
        With lblName(n)
        .BorderStyle = 1
        .Alignment = 2
        .Caption = " reg " & n
        .Left = 12480 - (n * 1200)
        .Height = 375
        .Width = 1095
        .Top = 2160
        .Visible = True
      End With
    Next
#2

لقد عملت برنامج يفعل هذا الأمر من قبل

إنتظر

سأعطيك الكود لاحقاً إن شاء الله لأني الآن مشغول

#3

نعم رأيت الكود و لكن ما المشكلة ؟؟؟

ظننت أن البرنامج لا يقوم بإنشاء أي شئ و يعطيك رسالة خطأ َ!!

لكني جربته و وجدت أنه يعمل

أما ما فهمت من طلبك فأنت تريد ان تعمل صفين كل صف به 5

خذ هذا الكود

Dim n As Integer
Dim lblName(10) As Label
On Error Resume Next
For n = 0 To 10
Set lblName(n) = Me.Controls.Add("VB.Label", "lblName" & n)
s = s + 1
With lblName(n)
.BorderStyle = 1
.Alignment = 2
.Caption = " reg " & n
if n < 5 then
.top= 1748 - (n * 400)
.left = 120
end if
if n >= 5 then
.top= 1248 - ( (n-5) * 400)
.left = 1200
end if
.Height = 375
.Width = 1095
.Visible = True
End With
Next

تم تعديل هذه المشاركة بواسطة omar_cplusplus في 10 يوليو 2007 في 21:52

#4

السلام عليكم

أخي هلا شرحت أكثر من فضلك

ماذا تقصد ب

اقتباس
ويكون كمدخل في الفورم وليس في الكود

أرجو الشرح وسأحاول أن أجد لك الحل وأتكلم شخصيا عن نفسي فقط اشرح قليلا

#5
micheal R jordan كتب:
السلام عليكم

أخي هلا شرحت أكثر من فضلك

ماذا تقصد ب

أرجو الشرح وسأحاول أن أجد لك الحل وأتكلم شخصيا عن نفسي فقط اشرح قليلا

إدخال عدد الصفوف و عدد الليبل في حقول ثم إعطاء النتيجة

أشكركم على الإهتمام

#6
اقتباس
إدخال عدد الصفوف و عدد الليبل في حقول ثم إعطاء النتيجة

أشكركم على الإهتمام

فهمت طلبك

و جاري كتابة الكود و سأعطيه لك

إنتظر

#7

أشكركم جزيل الشكر على تعاونكم ولقد تم إنهاء الفكرة بمساعدة أحد الأصدقاء ...

ولكن مارأيكم بإضافة بعض الإكسسوارات عليها ...

حاولت أن أضيف خاصية المؤشر عند المرور فوق الليبلات التي تم إنشائها .... ولم أستطع :(

أيضا كيفية إنشاء هذه العناصر داخل أداة picture أو frame لغرض تحريكهم عبر أداة vscroll

وهذا الكود بعد تعديله حسب مدخلين :

المطلوب : - تكست مع تغيير الإسم إلى txtleft(عدد الليبل في صف) - تكست مع تغيير الإسم إلى txttop (عدد الصفوف) - command1

طبعا هذا الكود بدون تعديل الإكسسورات ... فأرجو التعاون

Private Sub Command1_Click()
    Dim cno As Integer
    Dim n, x As Integer
    Dim lblName(1000) As Label
 On Error Resume Next
    For x = 1 To txtleft
    ttt = x * 600
        For n = 1 To txttop
            cno = cno + 1
            Set lblName(n) = Me.Controls.Add("VB.Label", "lblName" & n & "_" & x)
            With lblName(n)
                .BorderStyle = 1
                .Enabled = True
                .Alignment = 2
                .Caption = " reg_hack" & cno
                .Left = (n * 1200)
                .Height = 375
                .Width = 1095
                .Top = 1000 + (ttt)
                .Visible = True
            End With
        Next
    Next
End Sub
#8

هل تريد شيئاً مثل mouse icon ؟؟؟

تم تعديل هذه المشاركة بواسطة omar_cplusplus في 11 يوليو 2007 في 12:31

#9
omar_cplusplus كتب:
هل تريد شيئاً مثل mouse icon ؟؟؟

نعم يا أخ عمر وأشكرك على التفاعل معي .

وأيضا المطلوب :

إنشاء هذه الليبلات داخل frame or picture

#10

أما بالنسبة للماوس أيقون فأضف هذين السطرين

.MousePointer = 99
.MouseIcon = Command1.MouseIcon

أنا لا أعرف كيف أضيف path للماوس أيقون أثناء الكود فقمت بتغيير الماوس أيقون عند الزر

#11
omar_cplusplus كتب:
أما بالنسبة للماوس أيقون فأضف هذين السطرين

.MousePointer = 99
.MouseIcon = Command1.MouseIcon

أنا لا أعرف كيف أضيف path للماوس أيقون أثناء الكود فقمت بتغيير الماوس أيقون عند الزر

أشكرك أخي على تعاونك ...

طيب عملية إنشاء هذه الليبلات داخل frame or picture هل بإمكانك إفادتي بها ؟!

#12
اقتباس
طيب عملية إنشاء هذه الليبلات داخل frame or picture هل بإمكانك إفادتي بها ؟!

نعم

إستبدل بهذا السطر نظيره عندك

Set lblName(n) = Me.Controls.Add("VB.Label", "lblName" & n & "_" & x, Frame1)

طبعاً يجب أن يكون عندك Frame إسمه frame1

تم تعديل هذه المشاركة بواسطة omar_cplusplus في 11 يوليو 2007 في 17:21

#13
omar_cplusplus كتب:
نعم

إستبدل بهذا السطر نظيره عندك

Set lblName(n) = Me.Controls.Add("VB.Label", "lblName" & n & "_" & x, Frame1)

طبعاً يجب أن يكون عندك Frame إسمه frame1

أشكرك جزيل الشكر أخي عمر على التعاون معي وأشكر هذا الموقع الذي استضافنا ...

كيفية التعامل مع هذه الليبلات التي تم انشاءها مثل كل ليبل على حده في نفس المصفوفة ... كيف يتم ذلك ؟

مثلا وفي نفس مثالنا :

تحريك الليبل في نفس المصفوفة .... أو بزر الماوس الأيمن وإظهار قائمة معينة . ... أو عمل كليك على أي ليبل يتغير background color ...

أرجو توضيح ذلك ولو بمثال

وهذا الكود في المرفقات ...

Generate_Labels.rar

#14

لم أفهم قصدك أخي

هل تقصد انك تريد عمل شئ مثل Private Sub Command1_Click() لكن لالـlabels التي تنشئها في الـrun time ؟؟

#15

السلام عليكم

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

اقتباس
أو بزر الماوس الأيمن وإظهار قائمة معينة . ... أو عمل كليك على أي ليبل يتغير background color

آمل أن يفيدك ولو قليلا

وبخصوص تغيير الماوس فلا داعي إلى عمل command وما الى ذلك فقط استعمل الكود التالي في MouseIcon

وهو كمثال

.MouseIcon = LoadPicture("C:\WINDOWS\Cursors\harrow.cur")

كما يمكنك تغيير مسار الملف كما تشاء

أمل أن تسامحني على التأخير

شكرا

Create_At_RunTime.rar

تم تعديل هذه المشاركة بواسطة micheal R jordan في 12 يوليو 2007 في 04:18

#16
omar_cplusplus كتب:
لم أفهم قصدك أخي

هل تقصد انك تريد عمل شئ مثل Private Sub Command1_Click() لكن لالـlabels التي تنشئها في الـrun time ؟؟

نعم أخي عمر ...

وإذا لا يمكن لـ labels ... فأرجو بمثال بسيط لـ Command الذي يتم إنشاءه .

تحياتي

#17
micheal R jordan كتب:

السلام عليكم

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

أشكرك أخي على التعاون معي ...

ولكن المثال الذي وضعته هو إنشاء حدث لـ Label واحد ... فما بالك لأكثر من لـ Label كما في اخر مثال أرفقته ... أرجو الإفادة

تحياتي

#18

الأخ michal jordon سبقني و قام بالمطلوب

خذ هذا الكود منه و طبقه

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

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