получить апплет в веб-браузер - PullRequest
0 голосов
/ 31 мая 2011

Я разработал апплет, который отображается в отдельном окне Java (и также появляется пустое окно веб-браузера), но я бы хотел, чтобы он отображался в веб-браузере. Я понятия не имею об этом. Должен ли я изменить JFrame или это разные вещи? Мой код выглядит следующим образом:

Public class myApplet extends Applet implements  ActionListener{

public JPanel createContentPane (){

    System.out.println("1");
    // We create a bottom JPanel to place everything on.
    JPanel totalGUI = new JPanel();
    totalGUI.setLayout(null);

    titleLabel = new JLabel("Login");
    totalGUI.add(titleLabel);

    // Creation of a Panel to contain the JLabels
    textPanel = new JPanel();
    textPanel.setLayout(null);
    totalGUI.add(textPanel);

    // Usuario Label
    usuarioLabel = new JLabel("User");
    textPanel.add(usuarioLabel);

    // Password nuevo Label
    passwordLabel = new JLabel("Password");
    passwordLabel.setHorizontalAlignment(4);
    textPanel.add(passwordLabel);


    // TextFields Panel Container
    panelForTextFields = new JPanel();
    panelForTextFields.setLayout(null);
    totalGUI.add(panelForTextFields);

    // Password viejo Textfield
    usuarioField = new JTextField(8);
    panelForTextFields.add(usuarioField);

    // Password nuevo Textfield
    passwordField = new JPasswordField(8);
    panelForTextFields.add(passwordField);

    // Button for Logging in
    loginButton = new JButton("Restore");
    loginButton.addActionListener(this);
    totalGUI.add(loginButton);
    totalGUI.setOpaque(true);

    return totalGUI;
}


public void actionPerformed(ActionEvent e) {
    //restores password

    }

private static void createAndShowGUI() {

    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Change password");
    myApplet demo = new myApplet ();
    frame.setContentPane(demo.createContentPane());

    frame.setSize(310, 400);
    frame.setVisible(true);

}

public void init (){
System.out.println("Applet initializing");
final myApplet rp = new myApplet ();
 SwingUtilities.invokeLater(new Runnable() {
     public void run() {
        rp.createAndShowGUI();
 }
});
}

}

Ответы [ 3 ]

3 голосов
/ 31 мая 2011

Снимок экрана

myApplet in AppletViewer

код

//<applet code='myApplet' width=220 height=100></applet>
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/** This was terrible code.  You should take it back to whoever gave
it to you, and throw it at them.  Never get code from them again. */
public class myApplet extends JApplet implements  ActionListener{

    private JLabel titleLabel;
    private JLabel usuarioLabel;
    private JLabel passwordLabel;
    private JPanel textPanel;
    private JPanel panelForTextFields;
    private JTextField usuarioField;
    private JPasswordField passwordField;
    private JButton loginButton;

    public JPanel createContentPane (){
        System.out.println("1");
        // We create a bottom JPanel to place everything on.
        JPanel totalGUI = new JPanel();
        // Use LAYOUTS!
        totalGUI.setLayout(new FlowLayout());

        titleLabel = new JLabel("Login");
        totalGUI.add(titleLabel);

        // Creation of a Panel to contain the JLabels
        textPanel = new JPanel();
        totalGUI.add(textPanel);

        // Usuario Label
        usuarioLabel = new JLabel("User");
        textPanel.add(usuarioLabel);

        // Password nuevo Label
        passwordLabel = new JLabel("Password");
        passwordLabel.setHorizontalAlignment(4);
        textPanel.add(passwordLabel);

        // TextFields Panel Container
        panelForTextFields = new JPanel();
        totalGUI.add(panelForTextFields);

        // Password viejo Textfield
        usuarioField = new JTextField(8);
        panelForTextFields.add(usuarioField);

        // Password nuevo Textfield
        passwordField = new JPasswordField(8);
        panelForTextFields.add(passwordField);

        // Button for Logging in
        loginButton = new JButton("Restore");
        loginButton.addActionListener(this);
        totalGUI.add(loginButton);
        totalGUI.setOpaque(true);

        return totalGUI;
    }

    public void actionPerformed(ActionEvent e) {
        //restores password
    }

    private void createAndShowGUI() {
        add( createContentPane() );
        validate();
    }

    public void init (){
        System.out.println("Applet initializing");
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
    }
}

Для запуска

prompt>appetviewer myApplet.java
Applet initializing
1
prompt>
1 голос
/ 31 мая 2011

Вы должны расширить JApplet и поместить свои элементы управления непосредственно в экземпляр JApplet (this).

0 голосов
/ 31 мая 2011

Нажмите здесь , чтобы получить пример источника о том, как показать апплет в веб-браузере.

Спасибо Дипак

...