... Another alternative is to use labels to display the main text and attempt to place 'clickable' labels over the active words. Positioning will be a nightmare I guess.
I think that the easiest way to position the clickable label may be to use a monospaced font, which lets you easily calculate the width of a character for the font size you are using. Then you can do something like this:
Dim x as String
Dim CharWidth as Int
CharWidth = ...
Label1 = "Eat the cakes and drink the water before you go home."
x = "Eat the "
Label2 = "cakes"
Label2.Left = Label1.Left + x.Length * CharWidth
If you don't like the look of the monospaced font, you can use a proportional font and put each character into a fixed-width label for each character in the line. This lets you easily compute the position. I used this idea in the custom keyboard routines posted
on the Share forum.
To display the text, you just go:
txt = "
Eat the cakes and drink the water before you go home."
For i = 0 to txt.Length: charLabel(i) = txt.CharAt(i): Next
Once you've done that, it's easy to figure out which character was pressed.