|
|
|
![]() |
|
Strumenti |
![]() |
#1 | ||
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
[Java]Convertire Applet in Applicazione
Ciao a tutti!
Come da titolo, avrei bisogno di convertire una applet in una applicazione; ho letto che devo creare un jframe che funga da contenitore, e copiare dentro il metodo 'init' del frame il contenuto dell'init dell'applet, ed inserire (sempre nel frame) gli altri metodi presenti nell'applet......Ma non funziona! ![]() questo è il codice dell'applet da convertire in applicazione: Quote:
Quote:
Ultima modifica di Voltron : 27-04-2007 alle 09:58. |
||
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
non vorrei deire una cavolata..
ma le Applet usano AWT, mentre il JFrame è un componente di swing... hai provato ad usare un Frame anzichè un JFrame? ![]()
__________________
![]() |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
La questione comunque è anche un'altra: la tua applet usa Swing oppure AWT?? Visto che estende Applet, io deduco AWT. Dal tuo codice poi non è possibile capire cosa sono GraphCanvas, RouteTable, ecc.... Una cosa del genere (codice non testato!): Codice:
import java.awt.*; public class BellmanFord extends Frame { private GraphCanvas graphcanvas; private Options options; private Documentation documentation; private RouteTable routeTable; public BellmanFord () { super ("Un titolo"); setSize (300, 300); graphcanvas = new GraphCanvas(this); options = new Options(this); documentation = new Documentation(this); routeTable = new RouteTable(); setLayout(new BorderLayout(10, 10)); add("Center", graphcanvas); add("North", documentation); add("East", options); add("South", routeTable); } /* ...il resto... */ public static void main (String[] args) { BellmanFord frame = new BellmanFord (); frame.setVisible (true); } }
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Prendi la classe BellmanFord e:
1. aggiungi agli import: import javax.swing.*; 2. cambia extends Applet in extends JFrame 3. nel costruttore aggiungi come ultima riga: init(); E qui hai fatto. Ora aggiungi al progetto una classe Main, così: Codice:
//package se c'è import javax.swing.*; public class Main { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { new Main().start(); } }); } private void start() { BellmanFord window = new BellmanFord(); window.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); window.pack(); window.setVisible(true); }
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
L'ho già detta quella del pulsantone con la scritta "hey, qualcuno ha già risposto...", vero?
![]()
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Sì ma non ti preoccupare .... come diceva il famoso spot: du risposte is megl che uan
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
Grazie a tutti!
Innanzitutto vi linko il sito dove ho prelevato l'applet che simula l'algoritmo di BellmanFord(magari può essere utile anche ad altri studenti): http://www.laynetworks.com/Simulatio...0Algorithm.htm quì troverete(mi riferisco soprattutto ad andbin che chiedeva informazioni su GraphCanvas, ecc.) gli altri files di cui è composta l'applet che non ho postato poichè molto lunghi. Comunque ritengo che l'applet usi awt. Ultima modifica di Voltron : 27-04-2007 alle 11:38. |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
Ora provo a testare il codice fornito da andbin....
|
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
Allora, ho compilato ed esguito il seguente codice(quello gentilmente fornito da andbin a cui ho aggiunto i metodi mancanti):
Quote:
|
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
Ho risolto il problema del mancato funzionamento dei pulsanti precedentemente menzionati rendendo 'pubblici' e non 'privati' i campi istanza della classe BellmanFord. Ora l'unico problema è riuscire a visualizzare correttamente la textarea che mostra ad ogni iterazione dell'algoritmo dei messaggi utili all'utente.
ecco uno screenshot che mostra il problema di visualizzazione: http://img143.imageshack.us/my.php?image=algomq4.jpg |
![]() |
![]() |
![]() |
#11 | ||
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
Qualche "anima pia"
![]() screenshot esemplificativo del problema: http://img143.imageshack.us/my.php?image=algomq4.jpg questo è il listato della classe frame: Quote:
Quote:
Ultima modifica di Voltron : 27-04-2007 alle 17:07. |
||
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
1. Prova a togliere il metodo insets() da BellmanFord
2. Non usare AWT ![]()
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: May 2004
Messaggi: 727
|
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:10.