gpt4 book ai didi

Java JApplet 将不再显示在任何浏览器中

转载 作者:行者123 更新时间:2023-11-30 05:54:33 26 4
gpt4 key购买 nike

Applet 以前可以用,现在不行了。我对 GUI 的小程序不是很熟悉。这是 GUI 代码:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;

public class StockGUI extends JApplet implements ActionListener
{
private final String sPASS = "abc123";
//Stock oStock = new Stock();
//StockInput oStockInput = new StockInput();

//////////////////////////////////////////////////////////

JPanel jPanel;
JPasswordField jPass;
JButton jBEnter, jBYes, jBNo;
JTextArea jTAInput, jTACurrent;
JTextField jTxtField;
JLabel jLEnterP, jLQue, jLCurrent;
JScrollPane jScroll;




public void init()
{
getContentPane().setLayout(null);
jPanel = new JPanel(); jPanel.setSize(500,1500);

////////////////////////////////////////////////

jPass = new JPasswordField(20);
jPass.setActionCommand(sPASS);
jLEnterP = new JLabel("Enter Password:");
jPanel.add(jLEnterP);
jPanel.add(jPass);

jPass.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String cmd = e.getActionCommand();
if(cmd.equals(sPASS))
{
char[] cAry = jPass.getPassword();
if(isPassword(cAry))
{
doPass();
}
}
}
});

getContentPane().add(jPanel, BorderLayout.CENTER);

}

public void actionPerformed(ActionEvent e)
{
String cmd = e.getActionCommand();


if(cmd.equals("Yes"))
{

doInput();

}
if(cmd.equals("No") || cmd.equals("Done"))
{
doMain();
}

}

public void doPass()
{
jPanel.removeAll();
jLQue = new JLabel("Do you need to input more data?");
jBYes = new JButton("Yes");

jBYes.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
doInput();
}
});

jBNo = new JButton("No");

jBNo.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
doMain();
}
});

jPanel.add(jLQue);
jPanel.add(jBYes);
jPanel.add(jBNo);
refresh();

}

public void doInput()
{
jPanel.removeAll();
jLQue = new JLabel("Enter Data:");
jTAInput = new JTextArea(25,50);
jLCurrent = new JLabel("Current Data");
jTACurrent = new JTextArea(25, 25);
jTACurrent.setEditable(false);
//jTACurrent.setText(oStockInput.getList());
jScroll = new JScrollPane(jTACurrent);
jPanel.add(jLQue);
jPanel.add(jTAInput);
refresh();
}

public void doMain()
{

jPanel.removeAll();
jPanel.add(new JLabel("HELLO WORKD!!"));
refresh();

}

public void refresh()
{
jPanel.repaint();
jPanel.revalidate();
super.validate();
super.repaint();
}

public boolean isPassword(char[] cAry)
{

return Arrays.equals(cAry, sPASS.toCharArray());

}

HTML 代码:

//  <html>
//<body>
//<p align=center>
//<applet code="StockGUI.class" width=500 height=1500>
// </applet>
//</p>
//</body>
//</html>

我在编译时没有遇到任何错误。我正在尝试为 ActionListeners 使用匿名类,但这是我第一次使用它们。当我启动 Chrome 时,它​​只显示白色背景。任何帮助都会很好。谢谢。

最佳答案

我通常使用 appletviewer 调试 applet。将以下行添加到程序的顶部并重新编译:

//<applet code="StockGUI.class" width="500" height="300"></applet>

然后您可以使用以下命令从命令行测试小程序:

小程序查看器 StockGUI.java

您可以添加调试语句以查看发生了什么。执行此操作时,我会看到输入密码的提示。

关于Java JApplet 将不再显示在任何浏览器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9237950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com