PDA

View Full Version : [JAVA]problema finestre


NeoNum6
22-08-2006, 11:37
sto creando una piccola applicazione java e ho creato un pagina iniziale nella qualle ho aggiunto un JButton con scritto 'avanti'...
la prima pagina sarebbe solo di info e quindi ora vorrei che alla pressione del punsante la finestra cambi completamente...in pratica vorrei caricarci un JPanel diverso, quello con il programma 'vero'.

nel codice che vi allego in pratica vorrei che dopo il click sul tasto avanti si visualizzi quello che c'è nella classe ProgramPanel...

sorgenti (http://archivia.altervista.org/XArchivia.rar)

MEMon
22-08-2006, 12:00
Puoi fare così, al MainPanel passi anche il container che lo contiene, quello del JFrame insomma, poi alla pressione di "avanti" aggiungi il programPanel al container e rimuovi il Mainpanel.

NeoNum6
22-08-2006, 23:41
...ho fatto come dicevi...poi ho dato un nomecontainer.removeAll();
e un nomecointainre.add(new ProgramPanel);

...non va....:(

MEMon
22-08-2006, 23:48
prova anche un validate();

NeoNum6
22-08-2006, 23:49
prima o dopo l' add(); ???

NeoNum6
22-08-2006, 23:50
prima o dopo l' add(); ???
mi rispondo da solo...è dopo :D:D
grazie tutto è andato per il verso giusto ;)

MEMon
22-08-2006, 23:50
dopo dopo, cmq ti basta un container.remove(this); se ti trovi dentro al pannello da rimuovere.

NeoNum6
22-08-2006, 23:54
si infatti è più pulito con un remove(this) ... ;)

NeoNum6
29-08-2006, 19:02
altra domandona....come posso fare in modo che gli output delle funzioni(che io ho in System.out.println() ) si vedano a schermo? ci vuole un JText? o devo modificare in qualche modo la funzione???

spv42
29-08-2006, 19:17
altra domandona....come posso fare in modo che gli output delle funzioni(che io ho in System.out.println() ) si vedano a schermo? ci vuole un JText? o devo modificare in qualche modo la funzione???

Ti devi ridefinire Un PrintStream Personale:

Io ho fatto cosi:

public class PrintPane extends PrintStream{
public PrintPane(PrintStream ps) {

super(ps);
}

Poi nella classe che contiene il main :

System.setOut( log = new PrintPane(System.out));

Ciao

NeoNum6
29-08-2006, 19:41
io mi trovo in un JPanel...dovrei fare tutto da lì....

spv42
29-08-2006, 19:49
io mi trovo in un JPanel...dovrei fare tutto da lì....

Questo lo devi vedere tu!

NeoNum6
29-08-2006, 19:56
:(

spv42
30-08-2006, 11:01
:(

Si, puoi farlo anche da li!

La classe però la devi creare! :)