Ciao a tutti
.. Ho un piccolo problema cn la visualizzazione di 2 JPanel...
Il problema... è molto stupido.. ma nn capisco cosa cacchio gli prenda..
Praticamente ho creato 2 JPanel (1 cn 9 Bottoni e l'altro solo cn una JText cn delle scritte) il fatto è che eseguito con un Main proprio, funziona che è una bellezza.. Ma se appena appena lo faccio richiamare da un'altro programma che è ank'esso un JPanel.. Compaiono 2 schemini come stabilito...
ma sn vuoti, nel senso.. è come se non caricasse il contenuto perchè si blocca prima.. e mi si impalla il tutto.. tanto che per sbloccare, devo addirittura interrompere l'eseguzione fermando bruscamente la Jvm dal TaskManager..
Ecco a voi i codici
codice:
//Creazione di Entrambi
public class CreazionePannelli {
/*Se qst al posto di essere un metodo, è un main... Funzika ttt xfettamente;
ma se eseguito in qst caso... crea l'ombra dei 2 pannelli, ma si blocca ttt...*/
public static void CreazionePannelli()throws Exception {
PannelloScritta ps=new PannelloScritta()
ps.setVisible(true);
ps.setResizable(false);
PannelloBottoni pb=new PannelloBottoni();
pb.setVisible(true);
pb.setResizable(false);
}
codice:
//Crea Pannello con la scritta
import javax.swing.*;
import java.awt.*;
public class PannelloScritta extends JFrame{
JScrollPane scrollPane_diz;
public PannelloScritta(){
//Titolo
super(" Titolo");
//Posiziona sul monitor
setLocation(650,150);
setSize(370,395);
//Permette di terminare il programma quando premuta la 'X'
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel output_programma = new JPanel(); //crea pannello outPut
JTextArea Stampa=new JTextArea();
add(output_programma, BorderLayout.CENTER);
//pannello output contiene text e foto
// costruzione text area not editable
String Help=("Stringa");
Stampa = new JTextArea(Help);
Stampa.setForeground(Color.blue);
scrollPane_diz = new JScrollPane(Stampa);
scrollPane_diz.setMinimumSize(new Dimension(350, 350));
scrollPane_diz.setPreferredSize(new Dimension(350, 350));
scrollPane_diz.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
Stampa.setLocation(0,0);
Stampa.setEditable(false);
Stampa.setOpaque(false); //se False toglie lo sfondo
Stampa.setBackground(Color.white); //Imposta il colore dello sfondo
Stampa.setFont( new Font("Monotype Corsiva", Font.TRUETYPE_FONT, 14)); //Imposto uno stile al carattere
output_programma.add(scrollPane_diz);
} //Crea un pannello con una scritta
}
codice:
//Crea Pannello Con i Bottoni
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import sun.audio.*;
public class PannelloBottoni extends JFrame implements KeyListener {
int larghezzaRiga=150,
altezzaRiga=32;
JPanel pl;
JPanel sl;
JPanel tl;
public JPanel output_programma;
JButton uno=new JButton(" ");
JButton due=new JButton(" ");
JButton tre=new JButton(" ");
JButton quattro=new JButton(" ");
JButton cinque=new JButton(" ");
JButton sei=new JButton(" ");
JButton sette=new JButton(" ");
JButton otto=new JButton(" ");
JButton nove=new JButton(" ");
Color BackGroundRighe=Colori.Bluetto;
Color BackGroundTabellone=Colori.Bluetto;
public PannelloBottoni(){
//Titolo
super("TITOLO");
//Posiziona sul monitor
setLocation(475,350);
setSize(175,175);
//Permette di terminare il programma quando premuta la 'X'
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
output_programma = new JPanel(); //crea pannello outPut
output_programma.setBackground(BackGroundTabellone);
pl = new JPanel();
pl.setMinimumSize(new Dimension(larghezzaRiga, altezzaRiga));
pl.setPreferredSize(new Dimension(larghezzaRiga, altezzaRiga));
pl.add(uno);
pl.add(due);
pl.add(tre);
sl=new JPanel();
sl.setMinimumSize(new Dimension(larghezzaRiga, altezzaRiga));
sl.setPreferredSize(new Dimension(larghezzaRiga, altezzaRiga));
sl.add(quattro);
sl.add(cinque);
sl.add(sei);
tl=new JPanel();
tl.setMinimumSize(new Dimension(larghezzaRiga, altezzaRiga));
tl.setPreferredSize(new Dimension(larghezzaRiga, altezzaRiga));
tl.add(sette);
tl.add(otto);
tl.add(nove);
output_programma.add(pl);
output_programma.add(sl);
output_programma.add(tl);
add(output_programma, BorderLayout.CENTER);
pl.setBackground(BackGroundRighe);
sl.setBackground(BackGroundRighe);
tl.setBackground(BackGroundRighe);
} //Crea il pannello vero e proprio del Gioco
//LISTA ACTION LISTENER
public void keyPressed(KeyEvent ke) {
if (ke.getKeyCode()==KeyEvent.VK_ENTER) {
((JButton)(ke.getSource())).doClick();
}
}
public void keyReleased(KeyEvent ke) {}
public void keyTyped(KeyEvent ke){}
}
Grz 1000 in anticipo dell'aiuto