import java.awt.event.*;
import java.awt.*;
import javax.swing.*;public class neicun extends JFrame
{
private JTextArea area;
private JButton copy;
public neicun()
{
super("哼哼");
JTabbedPane tab = new JTabbedPane();
JLabel label= new JLabel("请输入要暂存的内容");
Box box1= Box.createVerticalBox();
box1.add(label);
//panel1.setLayout(new FlowLayout());
area= new JTextArea(5,12);
box1.add(new JScrollPane(area));
copy=new JButton("添加");
box1.add(copy);
tab.addTab("Tab1",null,box1,"tab1 ");
getContentPane().add(tab);
setSize(400,400);
setVisible(true);
//System.out.print(tab.getTitleAt(0));
ActionEventHandler handler = new ActionEventHandler();

copy.addActionListener(handler); }

private class ActionEventHandler implements ActionListener{
public void actionPerformed(ActionEvent event)
{
if(event.getSource()==copy)
tab.setTitleAt(0,"xinde") ; }

}


public static  void main(String[] args)
{
neicun nei= new neicun();

nei.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

源代码是这样的   要求就是点一下按钮 可以修改选项卡的 标题   但是我写的代码不正确希望有大大指出怎样改正  最好再教教我如何点一下按钮可以再生成一个和第一个选项卡页面相同的  选项卡页面    谢谢大家了。

解决方案 »

  1.   

    修改如下:import java.awt.event.*;
    import java.awt.*;
    import javax.swing.*;public class neicun extends JFrame
    {        
            private JTextArea area;
            private JButton copy;
            private JTabbedPane tab;
        public neicun()
        {    
            super("哼哼");
            JTabbedPane tab = new JTabbedPane();
            JLabel label= new JLabel("请输入要暂存的内容");
            Box box1= Box.createVerticalBox();
            box1.add(label);
            //panel1.setLayout(new FlowLayout());
            area= new JTextArea(5,12);
            box1.add(new JScrollPane(area));
            copy=new JButton("添加");
            box1.add(copy);
            tab.addTab("Tab1",null,box1,"tab1 ");
            getContentPane().add(tab);    
            setSize(400,400);
            setVisible(true);
            //System.out.print(tab.getTitleAt(0));
            ActionEventHandler handler = new ActionEventHandler();
            
            copy.addActionListener(handler);    }
        
        private class ActionEventHandler implements ActionListener{
            public void actionPerformed(ActionEvent event)
            {
                if(event.getSource()==copy)
                tab.setTitleAt(0,"xinde") ;        }
            
        }
        
        
        public static  void main(String[] args)
        {
            neicun nei= new neicun();
            
            nei.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            
        }
    }至于后面的要求,细看JDK API文档就可以解决了
      

  2.   

    import java.awt.event.*;
    import java.awt.*;
    import javax.swing.*;public class neicun extends JFrame
    {        
            private JTextArea area;
            private JButton copy;
            private JTabbedPane tab;
        public neicun()
        {    
            super("哼哼");
            JTabbedPane tab = new JTabbedPane();
            JLabel label= new JLabel("请输入要暂存的内容");
            Box box1= Box.createVerticalBox();
            box1.add(label);
            //panel1.setLayout(new FlowLayout());
            area= new JTextArea(5,12);
            box1.add(new JScrollPane(area));
            copy=new JButton("添加");
            box1.add(copy);
            tab.addTab("Tab1",null,box1,"tab1 ");
            getContentPane().add(tab);    
            setSize(400,400);
            setVisible(true);
            //System.out.print(tab.getTitleAt(0));
            ActionEventHandler handler = new ActionEventHandler();
            
            copy.addActionListener(handler);    }
        
        private class ActionEventHandler implements ActionListener{
            public void actionPerformed(ActionEvent event)
            {
                if(event.getSource()==copy)
                tab.setTitleAt(0,"xinde") ;        }
            
        }
        
        
        public static  void main(String[] args)
        {
            neicun nei= new neicun();
            
            nei.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            
        }
    }