J'ai enregistré Undoable Edit Listener dans JTextPane.Comment conserver Undoable Edit Listener précédent Lorsque set set editor editor mehtod est appelé
Cela fonctionne bien quand le kit de l'éditeur reste inchangé. Mais quand j'ouvre un autre fichier d'extension différente.
Je dois changer le kit d'éditeur de textpane.
Note: En fait textArea est une instance de JTextPane
if(ext.equals(".txt")){
try{
// textArea.setText(null);
textArea.setEditorKit(defaultkit);
String read=reader.readLine();
StringBuilder text = new StringBuilder();
int offset =0;
//int test=0;
while (read !=null){
text.append(read);
text.append('\n');
read = reader.readLine();
}
textArea.setText(text.toString());
}catch(IOException e){}
//catch(BadLocationException e){}
}
else{
try {
FileInputStream fis = new FileInputStream(path);
if(ext.equals(".rtf")){
textArea.setEditorKit(ek);
textArea.getEditorKit().read(fis, textArea.getDocument(), 0);
}
J'ai trouvé que lorsque la méthode de setEditorKit est appelé auditeur document de registre cesse d'exécuter sa fonction.
Quand j'enregistrer un autre annulable modifier listner il ne fonctionnera pas
textArea.setEditorKit(ek);
textArea.addUndoableEditListener(new MyListener());
' En fait, textArea est une instance de JTextPane' - alors pourquoi ne l'appelez-vous pas? – camickr
J'ai d'abord utilisé jTextArea; Je l'ai appelé 'textArea' puis je dois changer l'éditeur pour des raisons de style. –