单词排序 实时显示到另一个文本区
问题出在指令顺序不对,有些对象还没初始化分配内存就作为实参传递给方法
package window1_1;
import javax.swing.*;
import java.awt.*;
public class sortWord {
public static void main(String args[]) {
WindowDocument win=new WindowDocument();
win.setTitle("排序单词");
}
}
class WindowDocument extends JFrame{
JTextArea input,show;
JPanel panel;
TextListener docListener;
WindowDocument(){
panel=new JPanel();
input=new JTextArea(10,15);
show=new JTextArea(10,15);
this.add(panel);
docListener=new TextListener(input,show);
init();
this.setBounds(400, 400, 400, 350);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void init() {
//input=new JTextArea(10,15);这里之前出了问题
//show=new JTextArea(10,15);
//docListener.setInputText(input);
//docListener.setShowText(show);
panel.add(new JScrollPane(input));
panel.add(new JScrollPane(show));
show.setLineWrap(true); //文本自动回行
show.setWrapStyleWord(true); //文本区以单词为界自动换行
(input.getDocument()).addDocumentListener(docListener);
}
}
`