当前位置: 代码迷 >> J2SE >> Java 添加的按钮运行后不显示,调整大小后才会出来?解决办法
  详细解决方案

Java 添加的按钮运行后不显示,调整大小后才会出来?解决办法

热度:56   发布时间:2016-04-24 02:20:00.0
Java 添加的按钮运行后不显示,调整大小后才会出来?
如标题所描述一样,这个问题不知道是怎么回事?


下面是我的代码:
写的是一个计算器程序。
Java code
import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.*;import javax.swing.*;public class CaluateFrame extends JFrame implements ActionListener{        /**     * @author: mafer     */    //面板和滚动条    private JPanel jp;//总的面板    private JPanel jp1,jsp_jp2 = null;    private JScrollPane jsp = null;    //输入框    private JTextField jtf;    //数字键    private JButton jb0,jb1,jb2,jb3,jb4,jb5,jb6,jb7,jb8,jb9;    //运算符键    private JButton jbDian,jbAdd,jbSub,jbSum,jbMul,jbChu,jbYuShu,jbZhengFU;    //功能键    private JButton jbDel,jbClear;    //存储  每次结果的文本框    private JTextArea jtaResult;    //设置程序坐标及大小      参数    private static final Rectangle size = new Rectangle(100, 100, 280, 400);    Font f = new Font("宋体",Font.PLAIN,28);    Font f2 = new Font("宋体",Font.PLAIN,18);        //界面制作        CaluateFrame(){        this.setVisible(true);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        this.setBounds(size);//        this.setResizable(false);    //设置大小不可调整                jp = new JPanel(new BorderLayout());//        jp = new JPanel();//        this.setContentPane(jp);        this.add(jp);                //在北边添加 输入框        jtf = new JTextField("", 10);        jtf.setFont(f);        jp.add(jtf,BorderLayout.NORTH);                //在中间添加按钮控件                        //jb0,jb1,jb2,jb3,jb4,jb5,jb6,jb7,jb8,jb9;        jb0 = new JButton("0");        jb1 = new JButton("1");        jb2 = new JButton("2");        jb3 = new JButton("3");        jb4 = new JButton("4");        jb5 = new JButton("5");        jb6 = new JButton("6");        jb7 = new JButton("7");        jb8 = new JButton("8");        jb9 = new JButton("9");                //jbDian,jbAdd,jbSum,jbCheng,jbChu,jbYuShu,jbZhengFU;        jbDian  = new JButton(".");        jbAdd = new JButton("+");        jbSub = new JButton("-");        jbMul = new JButton("*");        jbChu = new JButton("/");        jbYuShu = new JButton("%");        jbZhengFU = new JButton("+_");        jbSum = new JButton("=");        //jbDel,jbClear        jbDel = new JButton("del");        jbClear = new JButton("c");                //添加上述按钮到中间面板中        jp1 = new JPanel(new GridLayout(5,4));        jp1.add(jbDel);                jp1.add(jbClear);        jp1.add(jbZhengFU);        jp1.add(jbYuShu);    //第一行         jp1.add(jb1);        jp1.add(jb2);        jp1.add(jb3);        jp1.add(jbAdd);    //第二行        jp1.add(jb4);        jp1.add(jb5);        jp1.add(jb6);        jp1.add(jbSub);    //第三行        jp1.add(jb7);        jp1.add(jb8);        jp1.add(jb9);        jp1.add(jbMul);    //第四行        jp1.add(jb0);        jp1.add(jbDian);        jp1.add(jbSum);        jp1.add(jbChu);    //第五行            jp.add(jp1,BorderLayout.CENTER);                        //南部  ---显示每次计算后的表达式        jtaResult = new JTextArea("显示每次的表达式\n",4,30);        jtaResult.setFont(f2);        jsp_jp2 = new JPanel();        jsp = new JScrollPane(jsp_jp2,ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,                ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);        jsp_jp2.add(jtaResult);                jp.add(jsp,BorderLayout.SOUTH);        //        this.add(jtf);//        this.add(jp1);//        this.getContentPane().add(jsp);    }        public static void main(String[] args) {        // TODO Auto-generated method stub        new CaluateFrame();    }    public void actionPerformed(ActionEvent arg0) {        // TODO Auto-generated method stub            }}




------解决方案--------------------
  相关解决方案