2011-01-21 29 views
8

Tôi hiện đang làm applet đầu tiên của mình. Trong khi kiểm tra các kết quả tôi muốn để có thể chạy nó trong nhật thực trong cửa sổ xem trước thay vì luôn luôn triển khai applet vào một cái bình và mở trang trong trình duyệt (bộ nhớ cache của trình duyệt giết chết tôi! Tôi luôn cần phải khởi động lại trình duyệt .. .)Thay đổi kích thước cho applet của tôi cũng trong nhật thực "chạy dưới dạng applet"

Dù sao, khi tôi cố gắng chạy ứng dụng với "chạy dưới dạng -> Java Applet", tôi đã xem trước nhưng nó luôn luôn rất nhỏ (đoán dưới 200x200). Khi tôi thay đổi kích thước cho mỗi tay, cửa sổ sẽ tăng nhưng nội dung vẫn nhỏ. Khi tôi gọi setSize(width, height), cửa sổ sẽ lớn hơn, nội dung vẫn nhỏ. Nhỏ không có nghĩa là nó thu nhỏ lại, nó có nghĩa là tôi chỉ nhìn thấy bảng màu đen, màu trắng (có thể nhìn thấy trong trình duyệt) không nhìn thấy được vì vậy nó không có vẻ được thu nhỏ ...

Tôi là gì còn thiếu?

Mã của tôi cho đến nay (trong đó hoạt động như dự kiến ​​trong broswer với chiều rộng 560 và chiều cao của 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")); 
} 
} 

Ảnh chụp màn hình sẽ hiển thị các vấn đề. Nếu cửa sổ có kích thước 660x500 (được đặt bằng setSize() khu vực hiển thị vẫn nhỏ: Java Applet

Trả lời

5

Kích thước cửa sổ của bạn được đặt là 500.500 và do đó kích thước của hộp này là màu đen. bạn mở rộng màn hình của mình

Xóa mã để đặt kích thước và kích thước tối thiểu, tối đa và được ưu tiên cho topPanel. Thay vào đó, hãy thêm mã này vào BorderLayout.WEST, sử dụng BorderLayout.CENTER. bên trái và sẽ đổi kích thước hộp đen của bạn khi cửa sổ đổi kích thước.

+0

theo cách này tôi thấy bảng điều khiển bên phải của tôi, vì bố cục là động (whi) ch không phải là xấu). Nhưng kích thước xem trước vẫn ở khoảng 200x200. Tôi sẽ thêm một ảnh chụp màn hình cho câu hỏi ... – WarrenFaith

+4

Tôi đã tìm ra lý do: Tôi có thể thay đổi cấu hình chạy kích thước của applet. Đặt nó thành 660x500 phù hợp với kích thước của tôi. – WarrenFaith

Các vấn đề liên quan