Pour rediriger les entr�es-sorties standard, tu as les
m�thodes java.lang.System.setOut(...), setIn(..) et
setErr(...).
J'avais fait ce genre de chose dans un TextArea d'awt, mais
les TextArea en question �taient statiques. Pas terrible
d'un point de vue objet, mais voici un bout de code, un peu
sale mais qui marche :
(stdOutText est le TextArea)
OutputStream stdOutStrm =
new OutputStream() {
boolean bbob = false; // d�tection des \n\r
String buf = "";
public void write(int b) throws IOException {
char a = (char) b;
if (a == '\r') this.bbob = true;
else {
if ((this.bbob) && (a != '\n'))
{
String ch = stdOutText.getText();
if (ch.indexOf("\n") < 0) {
stdOutText.replaceRange("", 0, ch.length());
} else
stdOutText.replaceRange("", ch.lastIndexOf("\n")+1,
ch.length());
}
buf = buf+String.valueOf(a);
this.bbob = false;
}
if ((a == '\n') || (a == '\r')) {
stdOutText.append(buf);
buf = "";
}
}
};
System.setOut(stdOutStrm);
C�t� JTables, je te conseille d'utiliser les TableModel,
c'est moins naturel � mettre en oeuvre, mais quand on a
bien pig�, on paut faire pas mal de choses. Pour ma part,
le tutorial javasoft et le doc du JDK m'ont suffit pour m'y
coller.
Message d'origine, de Nicolas Delsaux, le Jeudi 4 Avril
2002 16:17 :
> Salut � tous,
> une petite question de swing, donc, assez claire : je
> souhaite rediriger ma
> sortie standard vers un composant swing. Et ma principale
> question est de
> savoir lequel, et surtout comment. Naturellement, je
> souhaite pouvoir opier
> cette sortie automatiquement dans un fichier, et
> �galement faire en sorte
> qu'elle soit de taille non limit�e...
> Je crois que la question a �t� pos�e il y a peu de temps.
> Si c'est le cas,
> je m'en excuse par avance, et je demande juste qu'une
> bonne �me m'envoie le
> r�sum� des r�ponses.
> Tiens, tant que j'y suis, je vais aussi devoir me payer
> un jTable. Existe-t-il un tutorial, ou une m�thode pour
> �viter de se prendre la t�te
> avec ce composant r�put� d�licat ?
>
> Merci
>
> Nicolas Delsaux
--
St�phan BERNARD (+33) 473 44 07 25
[EMAIL PROTECTED]
LISC/CEMAGREF - 24 av. des Landais, BP 50085 - 63172
Aubi�re Cedex