Attualmente sto facendo la mia prima applet. Durante il test i risultati che vogliono essere in grado di farlo funzionare in Eclipse nelle finestre di anteprima invece di distribuire sempre l'applet in un vaso e aprendo la pagina nel browser (la cache del browser mi uccide! Ho sempre bisogno di riavviare il browser .. .)Modifica anche la dimensione dell'applet in eclissi "Esegui come applet"
In ogni caso, quando provo a eseguire l'app con "Esegui come -> Applet Java" ho ottenuto l'anteprima ma è sempre molto piccola (indovina sotto 200x200). Quando cambio le dimensioni per mano, la finestra cresce ma il contenuto rimane piccolo. Quando chiamo setSize(width, height)
la finestra inizia più grande, il contenuto rimane piccolo. Piccolo non vuol dire ridimensionato, vuol dire che vedo solo il pannello nero, quello bianco (che è visibile nel browser) non è visibile quindi non sembrava essere ridimensionato ...
Cosa sono io mancante?
Il mio codice finora (che funziona come previsto nel broswer con una larghezza di 560 e un'altezza di 500)
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Benchmark extends JApplet {
private static final long serialVersionUID = -8767182603875435760L;
GridLayout gridLayout = new GridLayout(7, 1);
JButton startTests = new JButton("Start");
JPanel testPanel = new JPanel();
JPanel topPanel = new JPanel();
@Override
public void init() {
super.init();
try {
java.awt.EventQueue.invokeAndWait(new Runnable() {
public void run() {
initComponents();
invalidate();
}
});
} catch (Exception ex) {
ex.printStackTrace();
}
}
public void initComponents() {
setSize(660, 500);
topPanel.setBackground(Color.BLACK);
topPanel.setSize(500, 500);
testPanel.setBackground(Color.WHITE);
testPanel.setSize(160, 500);
getContentPane().add(topPanel, BorderLayout.WEST);
getContentPane().add(testPanel, BorderLayout.EAST);
testPanel.setLayout(gridLayout);
testPanel.add(new JLabel("Triangles"));
testPanel.add(new JLabel("Pyramids"));
testPanel.add(new JLabel("Cubes"));
testPanel.add(new JLabel("Blending"));
testPanel.add(new JLabel("Spheres"));
testPanel.add(new JLabel("Lights"));
testPanel.add(new JLabel("Mass"));
}
}
La schermata dovrebbe mostrare il problema. Se la finestra ha la dimensione di 660x500 (impostata con setSize()
l'area visibile rimane piccola:
in questo modo vedo il pannello destro, perché il layout è dinamico (whi ch non è male). Ma la dimensione dell'anteprima rimane intorno a 200x200. Vorrei aggiungere uno screenshot alla domanda ... – WarrenFaith
ho trovato il motivo: posso cambiare nella configurazione di esecuzione la dimensione dell'applet. Impostandolo su 660x500 corrisponde alla mia taglia. – WarrenFaith