Ich habe ein Programm, das, wenn aufgefordert, öffnet einen externen Editor (derzeit hart zu erhaben). Der Benutzer gibt dann ein, was im Editor eingegeben wird, speichert die temporäre Datei und schließt den Editor. Wenn der Benutzer den Editor schließt, möchte ich, dass der Inhalt der temporären Datei im Programm angezeigt wird. Mein Hauptanliegen ist das Erstellen einer Bedingung, die erkennen kann, wann der Editor geschlossen wurde. Kann WindowListener in Bezug auf ein gestartetes externes Programm verwendet werden? Hier ist mein Code so weit: (Anmerkung:. Ich verwende die Laufzeit aufgrund eines Kompatibilitätsproblem mit dem Desktop und meine aktuelle Version von Gnome Dies wird nur unter Linux ausgeführt werden.)Bedingung für, wenn außerhalb Programm schließt
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();
}
Danke und lassen Sie mich wissen wenn Sie zusätzliche Informationen benötigen.
Arbeitete wie ein Charme. Vielen Dank! Wird die Antwort so schnell wie möglich annehmen –