JEdi​​torPane无法正常工作,如果我实现它,那么一切都会出错

时间:2014-09-01 01:00:42

标签: java browser jeditorpane

我和朋友一起做了一个更好的计划,他决定制作一个痛苦的工具,而我决定制作一个网络浏览器。我目前正在尝试实现这些字段。如果我添加一个地址栏和一个按钮,一切都按照说明的方式工作,但是当我放置一个JEditorPane时,显示器不显示它被告知显示的内容。

没有JEditorPane的代码(一切正常):

import java.awt.*;
import javax.swing.*;
public class browserPannel
{
    public static void main(String[] arg)
    {
        JFrame browser = new JFrame("A Nun In A Weelchair");
        browser.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        browser.setLocationRelativeTo(null);
        browser.setSize(1000,700);
        browser.setVisible(true);
        browser.setResizable(false);

        JTextField url = new JTextField();
        url.setSize(890,30);
        url.setVisible(true);
        url.setLocation(15,15);

        JPanel holder = new JPanel();
        holder.setBackground(Color.lightGray);
        holder.setSize(1000,700);

        JButton send = new JButton("Send");
        send.setSize(75,30);
        send.setVisible(true);
        send.setLocation(906,15);

        //JEditorPane htmlc = new JEditorPane();
        //htmlc.setBackground(Color.red);
        //htmlc.setEditable(true);
        //htmlc.setContentType("text/html");
        //htmlc.setSize(500,500);
        //htmlc.setVisible(true);
        //htmlc.setLocation(15,50);




        holder.add(url);
        holder.add(send);
        //holder.add(htmlc);
        browser.getContentPane().add(holder);
    }
}

图片没有JEditorPanehttp,一切都按照说法运作:http://i.stack.imgur.com/hONs3.png

使用JEditorPane的代码(一切都不按照说明的方式工作):

import java.awt.*;
import javax.swing.*;
public class browserPannel
{
    public static void main(String[] arg)
    {
        JFrame browser = new JFrame("A Nun In A Weelchair");
        browser.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        browser.setLocationRelativeTo(null);
        browser.setSize(1000,700);
        browser.setVisible(true);
        browser.setResizable(false);

        JTextField url = new JTextField();
        url.setSize(890,30);
        url.setVisible(true);
        url.setLocation(15,15);

        JPanel holder = new JPanel();
        holder.setBackground(Color.lightGray);
        holder.setSize(1000,700);

        JButton send = new JButton("Send");
        send.setSize(75,30);
        send.setVisible(true);
        send.setLocation(906,15);

        JEditorPane htmlc = new JEditorPane();
        htmlc.setBackground(Color.red);
        htmlc.setEditable(true);
        htmlc.setContentType("text/html");
        htmlc.setSize(500,500);
        htmlc.setVisible(true);
        htmlc.setLocation(15,50);




        holder.add(url);
        holder.add(send);
        holder.add(htmlc);
        browser.getContentPane().add(holder);
    }
}

IMAGE使用JEditorPane,一切都无法正常工作:http://i.stack.imgur.com/3ayeP.png

我尝试删除一些.set的,我试过看看onine,我也尝试过只运行JEditorPpane,但我似乎无法为它设置变量(例如位置,大小等)< / p>

1 个答案:

答案 0 :(得分:0)

您遇到了问题,因为FlowLayout经理是JPanel的默认布局管理员,正在自行决定如何管理holder面板并确定其内容

Editor Window

import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JButton;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;

public class BrowserPannel {

    public static void main(String[] arg) {
        JFrame browser = new JFrame("A Nun In A Weelchair");
        browser.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        browser.setLocationRelativeTo(null);

        JTextField url = new JTextField(20);

        JPanel header = new JPanel();
        header.setBackground(Color.lightGray);

        JButton send = new JButton("Send");

        JEditorPane htmlc = new JEditorPane();
        htmlc.setBackground(Color.red);
        htmlc.setEditable(true);
        htmlc.setContentType("text/html");

        header.add(url);
        header.add(send);
        browser.getContentPane().add(header, BorderLayout.NORTH);
        browser.getContentPane().add(new JScrollPane(htmlc));

        browser.pack();
        browser.setVisible(true);

    }
}