package mypackage;
public class Test {
public static void main(String[] args) {
WindowDocument win=new WindowDocument();
win.setBounds(100,100,590,500);
win.setTitle("排序单词");
}
}
package mypackage;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.Arrays;
import javax.swing.event.*;
public class WindowDocument extends JFrame implements DocumentListener , ActionListener{
JTextArea inputText,showText;
JMenuBar menubar;
JMenu menu;
JMenuItem itemCopy,itemCut,itemPaste;
WindowDocument(){
init();
setLayout(new FlowLayout());
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void init(){
inputText=new JTextArea(15,20);
showText=new JTextArea(15,20);
showText.setLineWrap(true);
showText.setWrapStyleWord(true);
menubar=new JMenuBar();
menu=new JMenu("编辑");
itemCopy=new JMenuItem("复制");
itemCut=new JMenuItem("剪切");
itemPaste=new JMenuItem("粘贴");
itemCopy.setActionCommand("copy");
itemCut.setActionCommand("cut");
itemPaste.setActionCommand("paste");
menu.add(itemCopy);
menu.add(itemCut);
menu.add(itemPaste);
menubar.add(menu);
setJMenuBar(menubar);
add(new JScrollPane(inputText));
add(new JScrollPane(showText));
inputText.getDocument().addDocumentListener(this);
itemCopy.addActionListener(this);
itemCut.addActionListener(this);
itemPaste.addActionListener(this);
}
public void setInputText(JTextArea text){
inputText=text;
}
public void setshowText(JTextArea text){
showText=text;
}
public void changedUpdate(DocumentEvent e){
String str=inputText.getText();
String regex="[\\s\\d\\p{Punct}]+";
String words[]=str.split(regex);
Arrays.sort(words);
showText.setText(null);
for(int i=0;i<words.length;i++)
showText.append(words[i]+",");
}
public void removeUpdate(DocumentEvent e){
changedUpdate(e);
}
public void insertUpdate(DocumentEvent e){
changedUpdate(e);
}
public void actionPerformed(ActionEvent e){
String str=e.getActionCommand();
if(str.equals("copy"))
showText.copy();
else if(str.equals("cut"))
showText.cut();
else if(str.equals("paste"))
inputText.paste();
}
}
java 排序单词
最新推荐文章于 2023-03-29 22:38:52 发布