2013-11-27 6 views
1

У меня есть апплет, который упакован в банку, которая, хотя она работает (проверена с помощью операторов печати, отображаемых на консоли), отображает только пустой экран.Апплет показывает пустой экран в браузере

Вот код апплета:

import java.awt.Color; 
import java.awt.GradientPaint; 
import java.awt.Graphics; 
import java.awt.Graphics2D; 
import java.awt.Point; 

import javax.swing.JApplet; 
import javax.swing.JButton; 
import javax.swing.JLabel; 
import javax.swing.JLayeredPane; 

public class Test extends JApplet { 
    JLayeredPane frame = new JLayeredPane(); 
    JButton button = new JButton("Test"); 
    JLabel backgroundLabel; 

    public void init() { 
      button.setBounds(10, 10, 100, 40); 

      backgroundLabel = new JLabel(){ 
        public void paintComponent(Graphics g){ 
          super.paintComponent(g); 

          Graphics2D g2d = (Graphics2D)g; 

        g2d.setPaint(new GradientPaint(
            new Point(0, 0), 
            new Color(90, 207, 233), 
            new Point(0, getHeight()), 
            Color.white)); 

        g2d.fillRect(0, 0, getWidth(), getHeight()); 

        g2d.dispose(); 
        } 
      }; 
      backgroundLabel.setBounds(0, 0, getWidth(), getHeight()); 

      frame.add(backgroundLabel, new Integer(0)); 
      frame.add(button, new Integer(1)); 

      add(frame); 
    } 
} 

И это HTML-код:

<applet 
    id="clientApplet" 
    codebase="test" 
    code="Test.class" 
    archive="test.jar" 
    width="820" height="600"> 
    Your browser does not support the <code>applet</code> tag. 
</applet> 

Апплет отлично работает в Eclipse, и никаких ошибок не отображаются в консоли. Кто-нибудь может сказать, в чем проблема?

+0

'JLayeredPane frame..' Это очень плохое имя для экземпляра' JLayeredPayne'. От имени я бы ожидал «JFrame». –

ответ

0

Похоже, что обновление прекратило действие тега <applet>. Я заменил его <embed>, и теперь все в порядке.

<embed id="test" 
     type="application/x-java-applet;version=1.6" 
     width="256" height="256" 
     archive="test.jar" 
     code="Test.class" 
     codebase="test" 
     pluginspage="http://java.com/download/" 
     myParam="" /> 
Смежные вопросы