تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف اعرف موقع الكلمة من الــ Richtextbox
#1
السلام عليكم ورحمة الله
أخواني كيف اعرف موقع الكلمة في الــ RichTextBox إن كانت الاولى او الثانية او ....
مثلا هذا الكود يعطيك عدد الكلمات الموجودة في الــ RichTextBox
PHP كود :
MsgBox(RichTextBox1.Text.Split.Count

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

ارجو الافادة بارك الله فيكم
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم
تفضل اخي هذا الكود لكل حالة طلبتها
إقتباس :لكن انا ريد عند وضع المؤشر على أي كلمة ان ياتيني برقمها التسلسلي
TextBox2.Text = RichTextBox1.SelectionStart
إقتباس :أو
ياتي بالكلمة نفسها اذا وضعت المؤشر عليها
TextBox1.Text = RichTextBox1.SelectedText
الرد }}}
تم الشكر بواسطة:
#3
شكرا اخ محمود
ولكن الذي اقصدة ان ياتيني برقم الكلمة وليس الحرف وكل شيء
يعني لوكن في الــ Richtextbox هذه العبارة
إقتباس :بسم الله الرحمن الرحيم
ووضعن المؤشر فوق كلمة
إقتباس :الرحمن
اريده يعطيني رقم 3 لانها ثالث كلمة أما بالطرقة التي وضعتها انت فانه يعطيني الرقم 13 لانه حسب الحروف والمسافات
الرد }}}
تم الشكر بواسطة:
#4
هل تقصد عندما تضللها ام فقط وضعت المؤشر على الكلمة
الرد }}}
تم الشكر بواسطة:
#5
لا فقط عند وضع المؤشر عليها
لان طريقة تظليل الكلمة اعرفها
الرد }}}
تم الشكر بواسطة:
#6
سأحاول اعطيني فرصة للغد :o
الرد }}}
تم الشكر بواسطة:
#7
بعد إذنك أخي محمود أكرم، كتبت هذا الكود إن شاء الله يلبي طلبك أخي أبو ريناد الحربي
PHP كود :
Public Class Form1

    
Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        MsgBox
("Index: " GetWordIndex(RichTextBox1.TextRichTextBox1.SelectionStart_
               
vbCrLf _
               
"Length: " GetWordLength(RichTextBox1.TextRichTextBox1.SelectionStart))

    
End Sub

    
Public Function GetWordIndex(ByVal text As StringByVal selection As Integer) As Integer
        Dim length 
As Integer text.Length
        
If selection >= length OrElse selection 0 Then Return -1
        Dim index 
As Integer selection
        
Do Until index 0
            
If text.Chars(index) = " "c OrElse text.Chars(index) = vbCrLf Then Exit Do
            
index -= 1
        Loop
        Dim splt 
As String() = text.Split(New Char() {" "cvbCrLf})
        
Dim count As Integer 0
        
For As Integer 0 To splt.Length 1
            
If count index Then
                
Return 1
            End 
If
            If 
0 Then
                count 
+= splt(I).Length 1
            
Else
                
count += splt(I).Length
            End 
If
        
Next
        
Return -1
    End 
Function

    Public Function 
GetWordLength(ByVal text As StringByVal selection As Integer) As Integer
        Dim length 
As Integer text.Length
        
If selection >= length OrElse selection 0 Then Return -1
        Dim index 
As Integer selection
        
Do Until index 0
            
If text.Chars(index) = " "c OrElse text.Chars(index) = vbCrLf Then Exit Do
            
index -= 1
        Loop
        
If index 0 Then
            Dim firstSpace 
As Integer text.IndexOf(" "c)
            
Dim firstLine As Integer text.IndexOf(vbCrLf)
            If 
firstSpace = -1 AndAlso firstLine = -1 Then Return text.Length
            
If firstSpace = -1 Then Return firstLine
            
If firstLine = -1 Then Return firstSpace
            
If firstLine firstSpace Then Return firstSpace Else Return firstLine
        End 
If
        
Dim spaceIndex As Integer text.Substring(index 1).IndexOf(" "c)
        
Dim lineIndex As Integer text.Substring(index 1).IndexOf(vbCrLf)
        If 
spaceIndex = -1 AndAlso lineIndex = -1 Then Return text.Substring(index 1).Length
        
If spaceIndex = -1 Then Return lineIndex
        
If lineIndex = -1 Then Return spaceIndex
        
If spaceIndex lineIndex Then
            
Return lineIndex
        
Else
            Return 
spaceIndex
        End 
If
        Return -
1
    End 
Function
End Class 
الرد }}}
تم الشكر بواسطة: waelalmsry75 , waelalmsry75
#8
السلام عليكم وبعد اذنك اخ Aly El-Haddad هذا كود اسهل للفهم وللسرعة
بما انك اخ Aly El-Haddad استعملت اداة القطع Split لذا استخدمتها بشكل اسهل واسرع
إقتباس :Dim wd
Dim m, x As Long
wd = Split(RichTextBox1.Text, " ")
For Each y In wd
x = x + Len(y) + 1
If x > RichTextBox1.SelectionStart Then
m = x - (Len(y) + 1)
MsgBox(y)
RichTextBox1.SelectionStart = m
RichTextBox1.SelectionLength = Len(y)
RichTextBox1.Focus()
Exit For
End If
Next
Big GrinBig GrinBig GrinBig Grin

استمتعوا بالكود ارجوا ان يكون هو المطلوب
الرد }}}
تم الشكر بواسطة:
#9
جزاكم الله خيرا يا اخوان
كنت اظن ان هنالك كود صغير من ضمن خيارة الــ RichTextBox لكن يبد انه لا يوجد
شكرا مرة اخرى
الرد }}}
تم الشكر بواسطة:
#10
أبو ريناد الحربي كتب :أو
ياتي بالكلمة نفسها اذا وضعت المؤشر عليها


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



الحمد لله الذي بنعمته تتم الصالحات



إذا كنت تقصد بالمؤشر مؤشر الماوس وليس مؤشر الكتابة جرب هذا المثال (وجدته بمواقع متعددة وقمت بتحسينه)







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


الملفات المرفقة
.rar   Get word under position-01.rar (الحجم : 76.42 ك ب / التحميلات : 43)
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  اختبار الفاتورة في موقع يطلع خطأ thepast 0 208 21-12-23, 12:06 PM
آخر رد: thepast
  [VB.NET] مطلوب تصحيح سطر فى هذا الــ Function AhmedEissa 3 498 13-12-23, 12:55 AM
آخر رد: العتيق
  تحديد موقع ملف user.config واعدة توجيهه لموقع آخر Mohammed Nafa 3 439 07-11-23, 10:12 PM
آخر رد: Mohammed Nafa
Rainbow [سؤال] إضافة شريط ضبط الكتابة في أداة RichTextBox أبو خالد الشكري 0 217 29-10-23, 08:19 AM
آخر رد: أبو خالد الشكري
  ما هو أفضل موقع موثوق فيه ترشحونه لربط قاعدة البيانات عليه أونلاين hazim1 1 373 16-09-23, 10:32 AM
آخر رد: Amir_Alzubidy
  تنزيل ملف من موقع علي الانترنت ؟ Abdh111 12 1,282 04-05-23, 07:22 PM
آخر رد: ramy alfoly
  د عند وضع رابط موقع على TEXBOX يفتح روابط موجودة في موقع M3U على LISTVIEW HASNI14 8 883 02-02-23, 06:51 PM
آخر رد: trakktour
  ازالة كلمة بين الاقواس في Richtextbox Basil Abdallah 4 782 19-09-22, 04:48 PM
آخر رد: Basil Abdallah
Star تغيير حجم خط RichTextBox أبو خالد الشكري 3 839 03-07-22, 07:42 PM
آخر رد: أبو خالد الشكري
  أستخراج نص من موقع ويب aldery 2 1,037 06-05-22, 08:12 PM
آخر رد: aldery

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم