У меня есть программа, которая при запросе открывает внешний редактор (в настоящее время он жестко закодирован для возвышенного). Затем пользователь напечатает все, что печатает в редакторе, сохранит временный файл и закроет редактор. Когда пользователь закрывает редактор, я хочу, чтобы содержимое временного файла отображалось в программе. Моя главная задача - создать условие, которое может определить, когда редактор закрыт. Может ли WindowListener использоваться в отношении запускающей внешней программы? Вот мой код до сих пор: (Примечание:. Я использую Время воспроизведения из-за проблем совместимости с настольными и моей текущей версии Gnome Это будет работать только на Linux.)Условие для закрытия внешней программы
private CachedTextInfo cti;
private File temp = File.createTempFile("tempfile",".tmp");
try{
theText.setText(cti.initialText);
String currentText = theText.getText();
BufferedWriter bw = new BufferedWriter(new FileWriter(temp));
bw.write(currentText);
bw.close();
Runtime.getRuntime().exec("subl "+ temp.getAbsolutePath());
//When editor closes, display tmp contents
}catch(IOException e) {
e.printStackTrace();
}
Спасибо и дайте мне знать, если вам нужна дополнительная информация.
Работает как очарование. Спасибо! Принят ответ как можно скорее –