Adding Hyperlink Capability to RichText Boxes

 

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
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sonicdater

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

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值