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

أريد انشاء Label برمجياً، أثناء RunTime

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

السلام عليكم

أخوتي الاعزاء أقوم حاليا على عمل برنامج تعليمي للأطفال من خلال تعليمهم على الحروف الأبجية و على تركيب الحروف لتصبح كلمات

و في آخر المراحل اعطيهم جملة كلماتها متصلة ببعضها و على الطالب أن ينقر بين الأحرف ليتم عزل الجملة من مكان النقر

لذلك أود ممن يمكنه المساعدة مساعدتي في كيفية انشاء lable في موقع النقر بالماوس

و لكم جزيل الشكر

#2

السلاك عليكم

أخي الكريم أنت تستطيع تحريك lable إلى مكان الحدث

#4

والله المشرفين دول بقطعوا علي الواحد ومش عارف اقدم اي اجابه اخد بيها ثواي صغير اوي يلا ربنا يسامحكم

  1. سبحان الله وبحمده سبحان الله العظيم


    متى نحكم العالم زى زمان ايام اجددنا

    صلى الله على محمد صلى الله عليه وسلم



#5
اقتباس
والله المشرفين دول بقطعوا علي الواحد ومش عارف اقدم اي اجابه اخد بيها ثواي صغير اوي يلا ربنا يسامحكم

هو لازم الأخ عيد الخلف أساساً يقوم بالبحث بالمحرك فيجد ما يريد

هو يطلب :

اقتباس
كيفية انشاء lable في موقع النقر بالماوس

تركت لك الإجابة على هذا السؤال ، فتفضل mono4hack ورينا قدراتك بإنتظار إجابتك ;) (معك يوم) إذا لم تجب فسأجب.

#6

سؤال لصاحب الموضوع : ايه علاقة

اقتباس
اعطيهم جملة كلماتها متصلة ببعضها و على الطالب أن ينقر بين الأحرف ليتم عزل الجملة من مكان النقر
بـ
اقتباس
لذلك أود ممن يمكنه المساعدة مساعدتي في كيفية انشاء lable في موقع النقر بالماوس
؟؟؟؟!!!!

تم تعديل هذه المشاركة بواسطة msayed2004 في 16 مايو 2007 في 23:26

#7

يبدو ان الفكرة لم تتضح لك و الذنب ذنبي حيث ان الجملة هي باللغة الانكليزية

و المطلوب منه اننا نعطيه جملة معينة و لكن من دون فراغات بين الكلمات و عندما ينقر الطالب بين اي حرفين يتم انشاء label و طبعا الـcaption هو " " و بالتالي يتم عزل الجملة من مكان النقر

#8

أستعمل Text بدل Label ثم أستخدم الدالة SendKeys لإرسال الفراغ عند النقر في الجملة

Private Sub Text1_Click()
SendKeys " "
End Sub
#9

لحد الان الكلام ما هو واضح !!!!!

لكن لانشاء ليبل اثناء التشغيل :

عرف اثناء التصميم مصفوفة من اليبل label1(0)

واثناء التشغيل لانشاء ليبل جديد اعمل ما يلي

load label1(1)
label1(1).visible=true
label1(1).caption="xxxxx"

label1(1).move x ,y
#10
عيد الخلف كتب:
يبدو ان الفكرة لم تتضح لك و الذنب ذنبي حيث ان الجملة هي باللغة الانكليزية

و المطلوب منه اننا نعطيه جملة معينة و لكن من دون فراغات بين الكلمات و عندما ينقر الطالب بين اي حرفين يتم انشاء label و طبعا الـcaption هو " " و بالتالي يتم عزل الجملة من مكان النقر

و هو أنت لما تعمل Label هيفصل الجملة ؟

لأ طبعا هتفضل كل حاجة فى مكانها , سيدى الفاضل التعديل المفروض يتم بتعديل الـ Caption للـ Label نفسه المحتوى على الجملة بوضع فراغ مكان الضغط.

الفكرة الحالية هى أنك تحصل على الأحداثى X و تقوم بتحديد طول النص اللى قبله بالقسمة على عرض الحرف الواحد بالخط المستخدم و بعدها تقوم بالتعديل.

#11
عبد العزيز اليوسفي كتب:
أستعمل Text بدل Label ثم أستخدم الدالة SendKeys لإرسال الفراغ عند النقر في الجملة

Private Sub Text1_Click()
 SendKeys " "
 End Sub

فكرة جيده.

#12

طبعا زي ما قال الاخ msayed انه من خلال التكست او اللابيل label وخاصيت caption

حنخليها تيكست

ممكن تستخدم دوال الحافظه

  clipboard.settext

وده علشان يعمل نسخ لحاجه وانت ممكن تحددها المسافه" "

[codeclipboard.settext]clipboard.gettext

وده علشان تستدعي الي موجود في الحافظه وطبعا حتكون المسافه

واداه

 instr() left() right() len()

والدوال دي بتحدد الكلام الي عايز تحدده

وممكن تستخدم نفس الاوامر مع خاصيه الseltext

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

هذا والله اعلم

فممكن حضرتك تستخدم الدوال دي علشا تعمل الي حضرتك عايزه

وانا اسف علي سوء شرحي علشان اكتر حاجه اكرها في حياتي الشرح

وانا مش متخصص بالمره في المجال ده فاتمني لو في اي حاجه مش صح حد يبلغني وله جزيل الشكر والاحترم

  1. سبحان الله وبحمده سبحان الله العظيم


    متى نحكم العالم زى زمان ايام اجددنا

    صلى الله على محمد صلى الله عليه وسلم



#13

بسم الله الرحمن الرحيم

دي يا اخوانا ان شاء الله أول مشاركة ليا - طبعا بعد الموضوع اللي طرحته ومحدش عبرني - المهم انا عندي اقتراح ممكن يفيد

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

شكرا يا اخوان

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long

Private WithEvents LB As Label

Private Type POINTAPI
	X As Single
	Y As Single
End Type

Dim A As POINTAPI
Dim Ax As Single, Ay As Single

Private Sub Form_Click()
	Set LB = Controls.Add("vb.label", "Label")
	With LB
		.Width = 500
		.Height = 500
		.Left = Ax
		.Top = Ay
		.Visible = True
		.Caption = "ClickMe"
		.BorderStyle = 1
	End With
End Sub

Private Sub Timer1_Timer()
	GetCursorPos A
	ClientToScreen Me.hwnd, A
	Ax = A.X
	Ay = A.Y
End Sub

تم تعديل هذه المشاركة بواسطة Eng. Usama El-Mokadem في 19 مايو 2007 في 17:31 — السبب: ضبط مظهر وتنسيق الكود

#14

لدي فكرة جيدة سارفع صورة قريبا

startingprogremmer.jpg
#15

اسف لان الفوتوشوب فيه مشكلة فقد صعب علي صنع درس بالصورة

لكن يوجد درس لكن اتمنى ان تفهمه

طبعا فكرة واحد مبرمج مبتدا :lol:

post-103926-1179559834_thumb.jpg

تم تعديل هذه المشاركة بواسطة مبرمج مبتدا في 19 مايو 2007 في 10:30

startingprogremmer.jpg
#16

اتمنى انك فهمت شنو اقصد :)

startingprogremmer.jpg
#17

محاولة اخرى لاضافة الكود . في المعاينة طالع تمام يارب بقى يطلع كده في العرض

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long

Private WithEvents Pic As PictureBox

Private Type POINTAPI
	x As Long
	y As Long
End Type

Dim A As POINTAPI
Dim Z, Nam, Pc

Private Sub Form_Click()
	Z = Z + 1
	Nam = "pic" & Z
	Set Pic = Controls.Add("vb.picturebox", Nam)
	With Pic
		.Visible = True
		.Width = 500
		.Left = A.x
		.Height = 500
		.Top = A.y
	End With
End Sub

Private Sub Form_Load()
	Timer1.Interval = 1
End Sub

Private Sub Timer1_Timer()
	On Error Resume Next
	GetCursorPos A
	Pc = ClientToScreen(Pic.hwnd, A)
End Sub

تم تعديل هذه المشاركة بواسطة Eng. Usama El-Mokadem في 19 مايو 2007 في 17:29 — السبب: ضبط مظهر الكود

#18

حط الكود بدون أى أضافة , فقط بين الـ Code tags

#19

أخي العزيز هو ده فعلا اللي انا عملته بس مش عارف في ايه

مثلا

label1.caption="amir"

لكن تقريبا السطور الكتير بتعمل مشكلة

ارجو الحل نفسي اشارك معاكم

ودي محاولة اخرى

Private WithEvents LB As Label
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

Private Type POINTAPI
	x As Long
	y As Long
End Type

Dim A As POINTAPI
Dim Z As Single
Dim Nam As String

Private Sub Form_Click()
	Z = Z + 1
	Set LB = Controls.Add("vb.label", Nam & Z)
	With LB
		.Visible = True
		.Width = 500
		.Height = 500
		.Left = A.x
		.Top = A.y
		.Caption = .Name
	End With
End Sub

Private Sub Form_Load()
	Timer1.Interval = 1
	Nam = "Label"
End Sub

Private Sub Timer1_Timer()
	GetCursorPos A
End Sub

تم تعديل هذه المشاركة بواسطة Eng. Usama El-Mokadem في 19 مايو 2007 في 22:36 — السبب: ضبط مظهر وتنسيق الكود

#20

طيب على العموم انا عايز اعرف هو الاخ عيد حل مشكلته ولا لأ

وبعدين الاكواد اللي انا حاططها مش بتظهر الاداة مكان المؤشر ليه بقى

#21

السلام عليكم

أخوتي الأعزاء

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

و لكم مني جزيل الشكر

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

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