我目前正在做我的第一個小程序。在測試結果時,我希望能夠在預覽窗口中的eclipse中運行它,而不是始終將applet部署到jar中並在瀏覽器中打開頁面(瀏覽器緩存會殺死我!我總是需要重新啓動瀏覽器.. )在eclipse中更改我的小程序的大小「run as applet」
無論如何,當我嘗試使用「run as - > Java Applet」運行應用程序時,我得到了預覽,但它總是非常小(猜測低於200x200)。當我每手改變尺寸時,窗口會增長,但內容保持不變。當我呼叫setSize(width, height)
時,窗口開始變大,內容保持不變。小並不意味着它的縮小,這意味着我只看到黑色的面板,白色的(在瀏覽器中可見的)不可見,所以它看起來沒有縮放...
我是什麼失蹤?
到目前爲止我的代碼(其工作方式預計在560寬度和高度500的broswer)
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"));
}
}
截圖應該顯示的問題。如果窗口大小爲660x500(使用setSize()
設置),則可見區域保持較小:
這樣我知道我的右面板,因爲佈局是動態的(whi ch不壞)。但預覽尺寸保持在200x200左右。我將添加一個屏幕截圖到問題... – WarrenFaith 2011-01-21 14:34:29