Solved

JEditPane

Posted on 1998-12-10
9
206 Views
Last Modified: 2012-05-04
i want to show text by jEditPane.
as i have understood, i can give the constructor an url or string represents it.
is there a way to give it a string that contains exactly the same text as in the source file of the url?
0
Comment
Question by:rzvika
  • 4
  • 3
  • 2
9 Comments
 
LVL 1

Accepted Solution

by:
Hans_Klose earned 50 total points
ID: 1229196
By default you will use DefaultEditorKit which is text/plain is you want tp use setText() with html you must first use
void setEditorKit(EditorKit kit) to get the right editor  
There are several ways to load content into this component.

The setText() method can be used to initialize the component from a string. In this case the current EditorKit will be used, and the content type will be expected to be of this type.

The read method can be used to initialize the component from a Reader. Note that if the content type is html, relative references (e.g. for things like images) can't be resolved unless the <base> tag is used or the Base property on HTMLDocument is set. In this case the current EditorKit will be used, and the content type will be expected to be of this type.

The setPage() method can be used to initialize the component from a URL. In this case, the content type will be determined from the URL, and the registered EditorKit for that content type will be set.

0
 

Author Comment

by:rzvika
ID: 1229197
well i did:

jEditorPane1 = new com.sun.java.swing.JEditorPane();
jEditorPane1.setBounds(0,0,324,444);
jEditorPane1.setFont(new Font("Serif", Font.PLAIN, 12));
jEditorPane1.setForeground(new Color(0));
jEditorPane1.setBackground(new Color(16777215));
jEditorPane1.setEditorKit(jEditorPane1.getEditorKitForContentType("text/html"));
jEditorPane1.setText(getTextPane());

(getTextPane() returns a string).
i created a page of an html and saw what was the code and i told getTextPane() to return this code by string.
in the program, the editor show it as a regular text.
please tell me what's wrong.
thank you!
0
 
LVL 1

Expert Comment

by:Hans_Klose
ID: 1229198
I have had the same problem that you, run into. I thought that this would work. I will take another look at it. And tell you if I figue it out. For now you can try useing the JEditorPane(String type, String text) ; constractor. see if that works better for you. And just put new panel each time you update the Html
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 1

Expert Comment

by:Hans_Klose
ID: 1229199
I have done this with 1.2 and it seem to work give it a shoot.
//------------
//import com.sun.java.swing.*;
import javax.swing.*;
import java.awt.*;


public class MainWindow extends JWindow
{
    MainWindow()
    {
        super();
       
        addWindowListener(new StdWindowAdapter());
       
        m_pnlHtmlBrowser.setVisible(true);
        m_pnlHtmlBrowser.setBackground(Color.red);
       
        getContentPane().add(m_pnlHtmlBrowser);
       
        Toolkit oToolKit = getToolkit();
        Dimension oDimenation  = oToolKit.getScreenSize();
       
       
        //make the screen half size of the display and show in the middle
        int x = oDimenation.width/4;
        int y = oDimenation.height/4;
        setBounds(x, y, x*   2, y*2);
        m_pnlHtmlBrowser.setBounds(x, y, x*   2, y*2);
       
        m_pnlHtmlBrowser.setEditorKit(new javax.swing.text.html.HTMLEditorKit());
        System.out.println(m_pnlHtmlBrowser.getContentType());
        m_pnlHtmlBrowser.setText(m_strHtmlContent);
       
       
        repaint();
        validate();
       
    }
   
    //member declaration
    JEditorPane m_pnlHtmlBrowser = new JEditorPane();
   
    String m_strHtmlContent = "<HTML><HEAD><TITLE>Critical Analysis</TITLE></HEAD><BODY BGCOLOR=\"#00ff40\" TEXT=\"#804000\"><B>BOLD</B>   Normal  <I>Italic</I></BODY></HTML>";
   
}
//------------
0
 
LVL 16

Expert Comment

by:heyhey_
ID: 1229200
it seems that setText does not work with older versions of Swnig (tested with 1.0.2)
you can check this URL for a workaround ...
http://developer.java.sun.com/developer/bugParade/bugs/4132791.html

(note:
setEditorKit(new com.sun.java.swing.text.html.HTMLEditorKit());
works exactly like
setEditorKit(jEditorPane1.getEditorKitForContentType("text/html"));
at least in  Swing 1.0.2
)

hope this helps
  heyhey
0
 

Author Comment

by:rzvika
ID: 1229201
Hans_Klose, your code doesn't work on jdk 1.1.6 (i know you didn't say so), it does the same.
isn't there a way to do it with this version?
(and what is javax? (is it only in jdk 1.2?))
thank you
0
 
LVL 16

Expert Comment

by:heyhey_
ID: 1229202
javax.swing is the new name of the Swing package (com.sun.java.swing)

0
 
LVL 1

Expert Comment

by:Hans_Klose
ID: 1229203
If you want to make it work with 1.1.6 take heyhey_ s work around it seems to be the only way I have seen so far............

0
 

Author Comment

by:rzvika
ID: 1229204
0

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Video by: Michael
Viewers learn about how to reduce the potential repetitiveness of coding in main by developing methods to perform specific tasks for their program. Additionally, objects are introduced for the purpose of learning how to call methods in Java. Define …
Viewers will learn about if statements in Java and their use The if statement: The condition required to create an if statement: Variations of if statements: An example using if statements:

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question