У меня есть небольшой шаблон, который я построил с целью реализации апплета через простое Java-приложение через NetBeans 7.1 (как при использовании Javacard, Netbeans Platform и т. Д. Просто простое Java-приложение с апплетом, инициализированным при запуске приложения)
Мне удалось заставить его вызывать апплет, когда я нажимаю кнопку запуска в NetBeans и у меня есть функциональность внутри апплета, но я не могу заставить его закрыться, и у меня ужасное чувство, что люди скажутя использовал jFrame и реализовал метод EXIT_ON_CLOSE.
Это НЕ то, что я хотел бы знать, как это сделать, моя миссия - реализовать его с помощью Frames! = jFrames.Я надеюсь, что кто-то может помочь, так как это меня немного напрягает, и мне нужно приступить к назначению Java, которое предполагает его использование.
В приложении есть код / классы для A: appletframe и B: applet
* 1.4 Write an applet to display a line of text.
* The text should then change its font size and style (bold, italic, underline)
* depending on where the mouse is clicked on the screen.
*/
package appletframe;
import java.awt.Graphics;
import java.awt.Frame;
import java.applet.Applet;
/**
* @author MuthaLoad aka Gruffy2012
*/
import java.awt.*;
public class AppletFrame extends Applet{
public static void main(String[] args) {
/*construct needs object instances*/
MrApplet mrApplet = new MrApplet(); // create instance/obj of MrApplet
Frame myFrame = new Frame("Applet"); // create frame "title optional"
//setDefaultCloseOperation(myFrame.EXIT_ON_CLOSE);(jFrame- not wanted)
/* add applet to the frame*/
//myFrame.addWindowListener();
myFrame.add(mrApplet, BorderLayout.CENTER);
myFrame.setBounds(10,10,500,500);
myFrame.setVisible(true); // step to make frame visible
/*initialize instance of mrApplet*/
mrApplet.init();
} // end main
} // end class
B: апплет
package appletframe;
import java.awt.*; //for buttons
import java.awt.event.*; //for events
import java.applet.*; //main applet api`s
import java.awt.Graphics; //graphics
public class MrApplet extends Applet implements ActionListener
{
private static final long serialVersionUID = 1L;
Button btnClick;
String msg = "";
public void init()
{
// TODO start asynchronous download of heavy resources
setSize(500, 500);
Button btnClick = new Button("Press Me ");
btnClick.addActionListener(this);
add(btnClick);
}
public void actionPerformed(ActionEvent e)
{
//throw new UnsupportedOperationException("Not supported yet.");
msg = "Yay, the button works";
repaint();
}
public void paint (Graphics g)
{
g.setFont(new Font("Serif", Font.ITALIC, 30)); //new font obj, font , font style, font size
g.setColor(new Color(0,255,0)); //new color obj, r,g,b
g.drawString(msg, 40, 80);
}
// TODO overwrite start(), stop() and destroy() methods
}
Еще раз спасибо за чтение и прояснение любых недоразумений .. Я ищу указатель относительно решения о закрытии окна моего апплета и фреймапри выходе, без переопределения всего этого с помощью jFrame, хотя я знаю, что это будет проще в первом случае.Спасибо и, как всегда, в долгу за все ваши советы.gruffy321