السلام عليكم
الإخوة الكرام
أريد أن أعرف الكود الذي يقوم مقام (دبل كليك)
وكذلك كود الانتقال إلى الكلمة التالية في النص
توضيح المطلوب:
إذا كان لدينا تيكست بوكس فيه نص
والمؤشر يقف على كلمة معينة في النص
يوجد زر عند الضغط عليه أريد أن يتم التظليل على الكلمة التي يقف عليها المؤشر (كأنني ضغطت دبل كليك بالماوس)
يوجد زر آخر عند الضغط عليه أريد أن ينتقل المؤشر إلى الكلمة التالية في النص
وجزاكم الله خيرا
وعليك السلام اخوي
قريت السؤال وحسبته سهل لكن الحمدلله لقيت الحل لكنه مو 100%
المشكلة في الحل هي انك اذا حطيت المؤشر على الكلمة قبل الاخيرة في سطر يتم تحديد الكلمة ومعاها جزء من السطر اللي بعده
والحقيقة اني ماني فاهم ليش يصير كذا لكن خذ الحل وان شاء الله تستفيد منه واذا قدرت تخليه شغال 100% ارجوك اكتب رد
للحل ضع RichTextBox او TextBox
اذا كنت استخدمت RichTextBox تأكد من جعل التحديد مرئيا من خلال تعديل الخاصية HideSelection للـRichTextBox
كود :
Public Class Form1
' متغير لحفظ موقع مؤشر الفارة
Dim cursorPos As Point
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub rtxt_MouseClick(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles rtxt.MouseClick
'تسجيل موقع المؤشر
cursorPos = e.Location
'
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
'Dim newString As String = rtxt.Text.Replace(vbCr, "").Replace(vbLf, "")
'تسجيل مكان بدء التحديد
Dim startindex = rtxt.GetCharIndexFromPosition(cursorPos)
'تسجيل مكان اول فراغ
Dim nextwhiteSpaceindex As Integer = rtxt.Find(" ", startindex + 1, RichTextBoxFinds.None)
'تحديد الكلمة التي بعد المؤشر
rtxt.Select(startindex, nextwhiteSpaceindex - startindex)
Me.Text = rtxt.SelectedText
End Sub
End Class
(31-01-20, 01:38 AM)معاند الحظ كتب : [ -> ]وعليك السلام اخوي
قريت السؤال وحسبته سهل لكن الحمدلله لقيت الحل لكنه مو 100%
المشكلة في الحل هي انك اذا حطيت المؤشر على الكلمة قبل الاخيرة في سطر يتم تحديد الكلمة ومعاها جزء من السطر اللي بعده
والحقيقة اني ماني فاهم ليش يصير كذا لكن خذ الحل وان شاء الله تستفيد منه واذا قدرت تخليه شغال 100% ارجوك اكتب رد
للحل ضع RichTextBox او TextBox
اذا كنت استخدمت RichTextBox تأكد من جعل التحديد مرئيا من خلال تعديل الخاصية HideSelection للـRichTextBox
كود :
Public Class Form1
' متغير لحفظ موقع مؤشر الفارة
Dim cursorPos As Point
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub rtxt_MouseClick(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles rtxt.MouseClick
'تسجيل موقع المؤشر
cursorPos = e.Location
'
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
'Dim newString As String = rtxt.Text.Replace(vbCr, "").Replace(vbLf, "")
'تسجيل مكان بدء التحديد
Dim startindex = rtxt.GetCharIndexFromPosition(cursorPos)
'تسجيل مكان اول فراغ
Dim nextwhiteSpaceindex As Integer = rtxt.Find(" ", startindex + 1, RichTextBoxFinds.None)
'تحديد الكلمة التي بعد المؤشر
rtxt.Select(startindex, nextwhiteSpaceindex - startindex)
Me.Text = rtxt.SelectedText
End Sub
End Class
بارك الله فيك أخي الكريم ونفع بك