Make a URL appear as a working link in a textarea component

I'm developing an applet which receives results from a database and then appends the results string to
a textarea component. The string contains a url which I want to appear as a working link when appended to the
textarea. I was thinking about a method which would allow you to append url objects to the textarea, but I cannot find anything, the only method I found was to append a string. Is there a solution to this or a possible work-around.
Ultimately I need to be able to link from the url which is retrieved from the database.

Thanks
Melanie
help_meAsked:
Who is Participating?
 
evijayConnect With a Mentor Commented:
You have to use a JFC Swing component HTML Text pane to do this instead of text area.
              Or else, you can use html component from sun instead of text area.
0
 
evijayCommented:
You have to use a JFC Swing component HTML Text pane to do this instead of text area.
Or else, you can use html component from sun instead of text area.
0
 
help_meAuthor Commented:
Please can you give me a url for the class description of the htmltextpane class, I have found textpane at:

http://www.dstc.uts.edu.au/java/swing-0.4.1/doc/api/com.sun.java.swing.basic.BasicTextPane.html

I found no reference to an html text pane, this is what I would like to use.

Thanks
0
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

 
evijayCommented:
The following are the places to look for

a) SwingSet demo program file HtmlPane.java
   here is the code too

           URL url = new URL(swing.javaDocPath + "/packages.html");
           html = new JEditorPane(url);
           html.setEditable(false);
           html.addHyperlinkListener(this);
           JScrollPane scroller = new JScrollPane();
           scroller.setBorder(swing.loweredBorder);
           JViewport vp = scroller.getViewport();
           vp.add(html);
           vp.setBackingStoreEnabled(true);
           add(scroller, BorderLayout.CENTER);

b) Everything about JEditorPane
      http://java.sun.com/products/jfc/swingdoc-current/index.html


0
 
evijayCommented:
Since you are not getting the data from a url, u need to
extend JEditorPane class, tweak some of its methods
0
 
help_meAuthor Commented:
Thanks for the code, could you please explain how I should tweak the editor pane constructor method so that it is able to append a string of database results. Once these results have been appended, I need the urls which were fetched to show up as working links, will the HyperlinkListener be able to look at the text in the editorpane and work out where the links are?

I have not been able to get the HyperlinkListener to work in the following test program. It gives me this error - Explicit cast needed to convert Applet1 to com.sun.java.swing.event.HyperlinkListener.

import java.awt.*;
import java.awt.event.*;
import com.sun.java.swing.*;
import java.lang.*;
import java.net.*;
import java.applet.*;
import java.util.*;

public class Applet1 extends Applet
{

public void init()
{
   
    try
    {
    URL url = new URL("http://www.ox.ac.uk");
    JEditorPane html = new JEditorPane(url);
    html.setEditable(false);
    html.addHyperlinkListener(this);
    JScrollPane scroller = new JScrollPane();
    scroller.setBorder(Swing.loweredBorder);
    JViewport vp = scroller.getViewport();
    vp.add(html);
    vp.setBackingStoreEnabled(true);
    add(scroller, BorderLayout.CENTER);
    }
   
    catch (java.lang.Exception ex)
    {
    ex.printStackTrace();
    }
     

}
}

Thanks for your help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.