تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ادراج ارتباط تشعبي في RichTextBox
#1
السلام عليكم اخواني استاذتي الكرام 
ارجو منكم المساعده في هذا السؤال الذي هو موضح من عنوانه ادراج ارتباط تشعبي في richtextBox مثل برنامج الدفتر او الورد خطرت ببالي هذه الفكره عندما كنت اعبث ببرنامجي قمت بنسخ ملف فيديو من احدا المجلدات ثم قمت بتشغيل برنامجي وقمت بالتحديد على اداه RichTextBox ثم قمت بلصق هذا الملف  فوجت بانه قام بلصق ملف الفيديو كا ارتباط تشعبي مثل الورد 
ان محتاج جدا لخبراتكم في هذا الكود ارجو ان تكونو كما عهدناكم وشكرا
الرد
تم الشكر بواسطة:
#2
اخى معاذ العامري

بخصوص الاداء RichTextBox
فهو عبارة ان واجهة برنامج WordPad الموجود باى جهاز كمبيوتر

حيث ان هذا البرنامج وهو الاشبح لواجهة Microsoft Office Word
لذلك التعامل مع الاداء فى النسخ واللصق سيكون مفعل تلقائي كما لو انك تستخدم البرنامج

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى تقديم   لكل من يقوم بالمساهمة
فى حل اى مشكلة او استفسار لديك مع اضافة رد بشكره ودعوة له
فالجميع هنا يعمل على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله
الرد
تم الشكر بواسطة: Finish , معاذ العامري
#3
إن كان القصد حدث الضغط على الارتباط التشعبي فهو الحدث LinkClicked للأداة RichTextBox
وتجد الرابط في e.LinkText داخل الحدث
PHP كود :
Private Sub RichTextBox1_LinkClicked(sender As ObjectAs LinkClickedEventArgsHandles RichTextBox1.LinkClicked
    Process
.Start(e.LinkText)
End Sub 
الرد
تم الشكر بواسطة: معاذ العامري , elgokr , elgokr
#4
شاكرا جدا تعاونكما معي استاذي elgokr و  finish 
شكرا جزيلاً لكما
الرد
تم الشكر بواسطة: elgokr , معاذ_ابراهيم
#5
(09-08-18, 06:57 PM)معاذ العامري كتب : شاكرا جدا تعاونكما معي استاذي elgokr و  finish 
شكرا جزيلاً لكما

الشكر لله


تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى تقديم   لكل من يقوم بالمساهمة
فى حل اى مشكلة او استفسار لديك مع اضافة رد بشكره ودعوة له
فالجميع هنا يعمل على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله
الرد
تم الشكر بواسطة: معاذ العامري , معاذ_ابراهيم
#6
وعليكم السلام أخ معاذ

كما فهمت من سؤالك هو أنك تريد آلية إضافة روابط إلى الـ RichTextBox عن طريق الكود.

كما تلاحظ أن أداة RichTextBox في الدوت-نت  تمتلك خاصية Controls  ( لحسن الحظ تمت وراثتها وعمل تكامل لها مع RichTextBox Smile  ) .

كما تلاحظ أداة LinkLabel هي الأداة الخاصة بالروابط في الدوت-نت  ( عبارة عن Label كـرابط )،

هنا نستنتج أنه يمكن إضافة LinkLabel إلى RichTextBox  كـ ( Control ) :-



كالمثال التالي  ( نفترض أن لديك RichTextBox في  Form1  وقمت بوضع الكود التالي داخل Form1_Load ) :

PHP كود :
Private Sub Form1_Load(sender As ObjectAs EventArgsHandles MyBase.Load
        Dim lb 
As New LinkLabel

        lb
.Text "Hello"

 
       RichTextBox1.Controls.Add(lb)
 
   End Sub 



 كما تلاحظ استطعنا إضافة رابط داخل الـ RichTextBox ، ولكن قد تلاحظ بأن الحدث RichTextBox1_LinkClicked  ( الحدث الخاص بتنفيذ شيء ما عند الضغط على الروابط ) ، بأنه لايعمل !! Undecided


لحل مثل هذه الإشكالية، فسأستخدم مفهوم ( وراثة الكائنات Inheritance )، سأجعل الحدث يتم تنفيذه عن طريق LinkLabel وليس عن طريق الـ RichTextBox ( سأورث الكائن LinkLabel إلى كائن جديد يكون به خصائص إضافية ).


 نقوم بإنشاء كلاس كالتالي :

PHP كود :
Class RichTextBoxLinkItem
        Inherits LinkLabel

        Private _LinkOrUrl 
As String

        Public Property LinkOrURL 
As String
            Get
                Return _LinkOrUrl
            End Get
            Set
(value As String)
 
               _LinkOrUrl value
            End Set
        End Property

        Private Sub RichTextBoxLinkItem_Click
(sender As ObjectAs EventArgsHandles Me.Click
            Process
.Start("chrome"_LinkOrUrl)
 
       End Sub

    End 
Class 

أسميته RichTextBoxLinkItem يرث الكائن LinkLable  ، وعند الضغط عليه يقوم بفتح الرابط (المخزن في المتغير LinkOrURL )  عن طريق متصفح chrome :-


لاحظ بإمكانك تعديل السطر :


PHP كود :
Process.Start("chrome"_LinkOrUrl

إلى


PHP كود :
Process.Start(_LinkOrUrl


إذا كنت تريد فتح الرابط بالمتصفح الإفتراضي داخل النظام .

_______________________________________________________________________________________________________________________________

الآن نقوم بتعديل الـ Form1_Load  ليصبح حسب التالي :-

PHP كود :
Private Sub Form1_Load(sender As ObjectAs EventArgsHandles MyBase.Load
        Dim lb 
As New RichTextBoxLinkItem

        lb
.Text "Hello"
 
       lb.LinkOrURL "http://vb4arb.com"

 
       RichTextBox1.Controls.Add(lb)
 
   End Sub 

لاحظ أصبح المتغير RichTextBoxLinkItem بدل من LinkLabel   في السطر الأول،

الآن لديك ميزة وهي إضافة ( رابط + نص مختلف عن الرابط )،  لتتمكن من إضافة روابط مثل  "إضغط_هنا" مثلًا     ( أعتقد أن هذا من ضمن ما تبحث عنه Smile )


المثال كامل بالمرفقات ، وأعتذر عن الإطالة لأن التعليمات البرمجية بلا شرح لا تساوي شيء .


وشكرًا !


الملفات المرفقة
.rar   مثال_إضافة_رابط_في_RichTextBox.rar (الحجم : 79.4 ك ب / التحميلات : 11)
الرد
تم الشكر بواسطة: elgokr , معاذ العامري , معاذ_ابراهيم


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال :- فى كيغية ادراج بيانات فى الداتا جريد فيو احمد خطاب 1 94 18-10-18, 02:54 AM
آخر رد: EYADISMAIL
  كيف يتم ادراج صورة متحركة احمد خطاب 1 57 13-10-18, 12:09 AM
آخر رد: عبد العزيز البسكري
  قائمة رقمية في RichTextBox معاذ_ابراهيم 7 215 30-08-18, 03:55 PM
آخر رد: ابو روضة
  [كود] ادراج كائن في RichTextBox معاذ_ابراهيم 3 123 14-08-18, 10:42 PM
آخر رد: alsouf
  البحث عن نص داخل RichTextBox ابو روضة 2 235 30-03-18, 07:19 AM
آخر رد: ابو روضة
Rainbow تظليل نص معين داخل RichTextBox ابو روضة 4 291 06-03-18, 02:53 AM
آخر رد: ابو روضة
  كيفية ادراج ذر داخل textbox محمود صالح 1 192 01-01-18, 04:19 PM
آخر رد: طالب برمجة
  [VB.NET] الاضافة عند ارتباط الجداول محمد اسماعيل 2 208 23-12-17, 07:44 PM
آخر رد: محمد اسماعيل
  ادراج الصورة في قاعدة البيانات العيدروس 4 412 29-10-17, 10:09 AM
آخر رد: سعود
  [سؤال] ياجماعة اريد كود ارتباط الكاميرا والتصوير المباشر عن طريق النقر على زر تصوير بالفورم محمد فرحان محمد 1 299 10-08-17, 01:11 AM
آخر رد: طـلال

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


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