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

أريد كيفية عمل هذه الحركة ؟

مغلق
بدأه Visual Studio في 14 يونيو 2005 · 3 رد · 665 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

توجد أسطوانة لإعراب القرآن الكريم يتم فيها عرض الأيات فيما يشبه textbox بحيث يمكنك الضغط على كل كلمة على حدة لمعرفة إعرابها , ومعلوم أن الآيات معروضة مع بعضها فيما يشبه textbox , فكيف يتم هذا الأمر ؟

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

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

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

#2

أخى محمد

اليك فكرة بسيطة

اضف الكود التالى ثم اضف الى الفورم Text1 ثم اضغط على أى كلمة سوف تلاحظ انها ظهرت على الفورم Caption

Private Sub Text1_Click()
Me.Caption = GetWord(Text1.SelStart)
End Sub

Function GetWord(ByVal Pos As Integer) As String
Dim First As Integer, Last As Integer

If Pos = 0 Then
GetWord = "Nothing to select"
Exit Function
End If

If Mid(Text1, Pos, 1) = " " Or Mid(Text1, Pos, 1) = vbCr Or Mid(Text1, Pos, 1) = vbLf Then
GetWord = "Nothing to select"
Exit Function
End If


For i = Pos To 1 Step -1
If Mid(Text1, i, 1) = " " Or Mid(Text1, i, 1) = vbCr Or Mid(Text1, i, 1) = vbLf Then
First = i + 1
Exit For
End If
Next i

For i = Pos To Len(Text1.Text)
If Mid(Text1, i, 1) = " " Or Mid(Text1, i, 1) = vbCr Or Mid(Text1, i, 1) = vbLf Then
Last = i
Exit For
End If
Next i

If First = 0 Then First = 1

GetWord = Mid(Text1, First, Last - First)
End Function

ممكن تستخدم ال function ديه فى أى برنامج

أرجو ان تكون هى ما تريد :)

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

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

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#3

السلام عليكم

كود اخي vb6_Rocket جميل وممتاز للغاية

فقط هو نسي -لانه كتبه بسرعة - أن يقوم بزيادة واحد علي الخاصية SelStart ليصبح الكود :

Me.Caption = GetWord(Text1.SelStart + 1)

لأنها تبدأ من الصفر وليس من الواحد وبالتالي فسيكون هناك مسافة في أول أي نص سيتم التأشير عليه بالماوس.. بالتالي سيتم ظهور "Nothing to select" طبقا لشرط If الثاني..

يمكننا أيضا استخدام الكود التالي :

Private Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim sBuffer As String
If Text1.Text = "" Then Exit Sub
If Button = 1 Then
 sBuffer = Text1.SelText
 Me.Caption = sBuffer
End If
End Sub

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

ومن الممكن أن يخطأ المستخدم في تحديد الكلمة المراد التأشير عليها وبالتالي فقد قام أخي VB6_Rocket في المثال الذي وضعه بوضع معظم الشروط لتحديد الكلمة المشار إليها بالماوس ..

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

- التأشير علي نص يحتوي علي كلمة واحدة فقط

-التأشير علي أخر كلمة في النص .

وأعتقد انه لا توجد أوضاع أخري للتأشير علي النص سيعطوا أخطاء غير السابقان..

وتقبلوا تحياتي..

تم تعديل هذه المشاركة بواسطة Pharaonic_Guy في 14 يونيو 2005 في 05:46

#4

إخواني الأفاضل

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

فجزاكم الله كل خير

لكن لي طلب بسيط

أريد عندما أضغط بالماوس على الكلمة التي بداخل التكست بوكس أن يتغير لونها , وعندما أضغط على الكلمة التي بعدها يتغير لونها ويرجع لون الأخرى كما كان

أرجو أن يكون طلبي واضحا

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

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

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