Adding Hyperlink Capability to RichText Boxes

Visual Basic 专栏收录该内容
17 篇文章 0 订阅
 

Adding Hyperlink Capability to RichText Boxes

This tip show how to add hyperlinks into a RichTextBox. What you need to create is two classes that will interact with the RichTextBox.

The two classes are CHyperlink and CHyperlinks.

CHyperlink

CHyperLink is a simple Class that describes a hyperLink and has a method to open the URL it points to.

Properties:

  • LinkUrl
  • LinkText

Methods:

  • OpenLink

The LinkUrl property is a string containing the URL (for example: http://www.microsoft.com).

The LinkText property is a string containing the text shown in the RTF box (Click here to go to Microsoft).

The OpenLink methods use the ShellExecute API function to launch the default webbrowser and passes the URL to it.

CHyperLinks

CHyperLinks is a collection class. It contains a collection of CHyperLink objects. When you develop an application you only need to create an object of the CHyperLinks class. CHyperLinks also uses VB WithEvent keyword to "catch" the events of the RTF box that have the hyperlinks.

Properties:

  • Normal collection properties as Count, Item and NewEnum.
  • RichTextBox

Methods:

  • Add
  • Remove

The RichTextBox property is actually a RichTextBox object. You must set this object to a RichTextBox on a form.

The Add methods takes three arguments:

object.Add LinkText, LinkURL [, Key]

For example lets say you have a RichTextBox, named RichTextBox1, on a form and you want to add a hyperlink to VB-World to it. Then use this code:

Option Explicit
Private hlkLinks As New CHyperLinks

Private Sub Form_Load()
    Set hlkLinks.RichTextBox = RichTextBox1
    hlkLinks.Add "Go to VB-World", "www.vb-world.net"
End Sub

The Add method will add a CHyperLink object to the collection AND add the text "Go to VB-World" to the RichTextBox1 object. This text will be underlined and in the colour blue.

When you click on this hyperlink in the RTF box (you will not see a hand cursor) the CHyperLink will trap that event and open your browser and point it to VB-World.

The Remove method will only remove the hyperlink from the collection. It will not change the text in the RTF box.

You can add these two classes into any project or you can compile them into an ActiveX DLL.


Completed Hyperlink Demo Project

I have attached a project that show you how to use the classes. It is written in VB5. The zip file also includes two text files that contain the code of two classes that you can just cut and paste if you're not able to open the project.

Tip by Joacim Andersson

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

打赏
文章很值,打赏犒劳作者一下
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页

打赏

sonicdater

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值