java实现文本的左右复制
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class copy
{ JFrame frame = new JFrame ("输入文本复制");
JTextArea ta1,ta2;
JButton copy1,copy2;
public static void main(String args[])
{ copy tad = new copy();
tad.go();
}
public void go()
{ ta1 = new JTextArea(20,20);
ta1.setSelectedTextColor(Color.blue); //设置选中文本的颜色为蓝色
ta2 = new JTextArea(20,20);
ta2.setSelectedTextColor(Color.red); //设置选中为红色
//放置到JScrollPane中
JScrollPane jsp1 = new JScrollPane(ta1,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
JScrollPane jsp2 = new JScrollPane(ta2,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
copy1 = new JButton("————>");
//将ta1中选中文本或所有内容复制到ta2
copy1.addActionListener(new ActionListener()
{ public void actionPerformed(ActionEvent e)
{ if (ta1.getSelectedText()!=null)
ta2.append(ta1.getSelectedText()+"\n");
else
ta2.append("\n"+ta1.getText()+"\n");
}
});
copy2 = new JButton("<————");
//将ta1中选中文本或所有内容复制到ta2
copy2.addActionListener(new ActionListener()
{ public void actionPerformed(ActionEvent e)
{ if (ta2.getSelectedText()!=null)
ta1.append(ta2.getSelectedText()+"\n");
else
ta1.append("\n"+ta2.getText()+"\n");
}
});
JPanel panel1 = new JPanel();
panel1.add(jsp1);
Border etched = BorderFactory.createEtchedBorder();
panel1.setBorder(etched);
JPanel panel2 = new JPanel();
panel2.add(copy1);
panel2.add(copy2);
JPanel panel3 = new JPanel();
panel3.add(jsp2);
panel3.setBorder(etched);
Container cp = frame.getContentPane();
cp.add(panel1,BorderLayout.WEST);
cp.add(panel2,BorderLayout.CENTER);
cp.add(panel3,BorderLayout.EAST);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setSize(700,500);
frame.setVisible(true);
}
}