<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_by_API%2Fjava.applet%2FAppletStub</id>
		<title>Java by API/java.applet/AppletStub - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_by_API%2Fjava.applet%2FAppletStub"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_by_API/java.applet/AppletStub&amp;action=history"/>
		<updated>2026-04-21T21:36:33Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_by_API/java.applet/AppletStub&amp;diff=873&amp;oldid=prev</id>
		<title> в 17:43, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_by_API/java.applet/AppletStub&amp;diff=873&amp;oldid=prev"/>
				<updated>2010-05-31T17:43:48Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:43, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_by_API/java.applet/AppletStub&amp;diff=874&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_by_API/java.applet/AppletStub&amp;diff=874&amp;oldid=prev"/>
				<updated>2010-05-31T14:22:24Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== implements AppletStub ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.applet.Applet;&lt;br /&gt;
import java.applet.AppletContext;&lt;br /&gt;
import java.applet.AppletStub;&lt;br /&gt;
import java.applet.AudioClip;&lt;br /&gt;
import java.awt.Button;&lt;br /&gt;
import java.awt.Frame;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Image;&lt;br /&gt;
import java.awt.Panel;&lt;br /&gt;
import java.awt.Toolkit;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.event.WindowAdapter;&lt;br /&gt;
import java.awt.event.WindowEvent;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.InputStream;&lt;br /&gt;
import java.net.MalformedURLException;&lt;br /&gt;
import java.net.URL;&lt;br /&gt;
import java.util.Enumeration;&lt;br /&gt;
import java.util.Hashtable;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
public class MainClass extends Applet implements ActionListener {&lt;br /&gt;
  static MainClass myApplet;&lt;br /&gt;
  static MyStub myStub;&lt;br /&gt;
  Image im;&lt;br /&gt;
  public void init() {&lt;br /&gt;
    System.out.println(&amp;quot;Code base = &amp;quot; + getCodeBase());&lt;br /&gt;
    System.out.println(&amp;quot;Document base = &amp;quot; + getDocumentBase());&lt;br /&gt;
    System.out.println(&amp;quot;\ninit () called&amp;quot;);&lt;br /&gt;
    System.out.println(&amp;quot;isActive () returns &amp;quot; + isActive());&lt;br /&gt;
    Button b = new Button(&amp;quot;Visit www.jexp.ru&amp;quot;);&lt;br /&gt;
    b.addActionListener(this);&lt;br /&gt;
    add(b);&lt;br /&gt;
    b = new Button(&amp;quot;Audio&amp;quot;);&lt;br /&gt;
    b.addActionListener(this);&lt;br /&gt;
    add(b);&lt;br /&gt;
    String imageName = getParameter(&amp;quot;image&amp;quot;);&lt;br /&gt;
    if (imageName != null)&lt;br /&gt;
      im = getImage(getCodeBase(), imageName);&lt;br /&gt;
  }&lt;br /&gt;
  public void start() {&lt;br /&gt;
    System.out.println(&amp;quot;start () called&amp;quot;);&lt;br /&gt;
    System.out.println(&amp;quot;isActive () returns &amp;quot; + isActive());&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    if (im != null)&lt;br /&gt;
      g.drawImage(im, 0, 0, this);&lt;br /&gt;
  }&lt;br /&gt;
  public void actionPerformed(ActionEvent e) {&lt;br /&gt;
    if (e.getActionCommand().equals(&amp;quot;Audio&amp;quot;)) {&lt;br /&gt;
      String soundName = getParameter(&amp;quot;audio&amp;quot;);&lt;br /&gt;
      if (soundName != null) {&lt;br /&gt;
        AudioClip ac = getAudioClip(getDocumentBase(), soundName);&lt;br /&gt;
        ac.play();&lt;br /&gt;
      }&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
    try {&lt;br /&gt;
      URL u = new URL(&amp;quot;http://www.jexp.ru&amp;quot;);&lt;br /&gt;
      getAppletContext().showDocument(u);&lt;br /&gt;
    } catch (MalformedURLException exc) {&lt;br /&gt;
      System.out.println(e);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public void stop() {&lt;br /&gt;
    System.out.println(&amp;quot;stop () called&amp;quot;);&lt;br /&gt;
    System.out.println(&amp;quot;isActive () returns &amp;quot; + isActive());&lt;br /&gt;
  }&lt;br /&gt;
  public void destroy() {&lt;br /&gt;
    System.out.println(&amp;quot;destroy () called&amp;quot;);&lt;br /&gt;
    System.out.println(&amp;quot;isActive () returns &amp;quot; + isActive());&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Frame frame = new Frame(&amp;quot;AppletAndApp as an Application&amp;quot;);&lt;br /&gt;
    myApplet = new MainClass();&lt;br /&gt;
    frame.add(new Panel().add(myApplet));&lt;br /&gt;
    frame.addNotify();&lt;br /&gt;
    myApplet.setStub(myStub = new MyStub(args));&lt;br /&gt;
    myApplet.init();&lt;br /&gt;
    frame.setSize(300, 200);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
    myStub.setActive(true);&lt;br /&gt;
    myApplet.start();&lt;br /&gt;
    frame.addWindowListener(new WindowAdapter() {&lt;br /&gt;
      public void windowClosing(WindowEvent w) {&lt;br /&gt;
        myStub.setActive(false);&lt;br /&gt;
        myApplet.stop();&lt;br /&gt;
        myApplet.destroy();&lt;br /&gt;
        System.exit(0);&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class MyStub implements AppletStub {&lt;br /&gt;
  private boolean active = false;&lt;br /&gt;
  private Hashtable ht = new Hashtable();&lt;br /&gt;
  private MyContext context;&lt;br /&gt;
  MyStub(String[] args) {&lt;br /&gt;
    context = new MyContext(); &lt;br /&gt;
    if ((args.length &amp;amp; 1) != 0)&lt;br /&gt;
      return;&lt;br /&gt;
    for (int i = 0; i &amp;lt; args.length; i += 2)&lt;br /&gt;
      ht.put(args[i], args[i + 1]);&lt;br /&gt;
  }&lt;br /&gt;
  public boolean isActive() {&lt;br /&gt;
    return active;&lt;br /&gt;
  }&lt;br /&gt;
  public URL getDocumentBase() {&lt;br /&gt;
    URL u = null;&lt;br /&gt;
    try {&lt;br /&gt;
      u = new URL(&amp;quot;file:/C:./x.html&amp;quot;);&lt;br /&gt;
    } catch (MalformedURLException e) {&lt;br /&gt;
    }&lt;br /&gt;
    return u;&lt;br /&gt;
  }&lt;br /&gt;
  public URL getCodeBase() {&lt;br /&gt;
    URL u = null;&lt;br /&gt;
    try {&lt;br /&gt;
      u = new URL(&amp;quot;file:/C:./&amp;quot;);&lt;br /&gt;
    } catch (MalformedURLException e) {&lt;br /&gt;
    }&lt;br /&gt;
    return u;&lt;br /&gt;
  }&lt;br /&gt;
  public String getParameter(String name) {&lt;br /&gt;
    return (String) ht.get(name);&lt;br /&gt;
  }&lt;br /&gt;
  public AppletContext getAppletContext() {&lt;br /&gt;
    return context;&lt;br /&gt;
  }&lt;br /&gt;
  public void appletResize(int width, int height) {&lt;br /&gt;
  }&lt;br /&gt;
  public void setActive(boolean active) {&lt;br /&gt;
    this.active = active;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class MyContext implements AppletContext {&lt;br /&gt;
  public AudioClip getAudioClip(URL url) {&lt;br /&gt;
    return Applet.newAudioClip(url);&lt;br /&gt;
  }&lt;br /&gt;
  public Image getImage(URL url) {&lt;br /&gt;
    Toolkit tk = Toolkit.getDefaultToolkit();&lt;br /&gt;
    return tk.getImage(url);&lt;br /&gt;
  }&lt;br /&gt;
  public Applet getApplet(String name) {&lt;br /&gt;
    return null;&lt;br /&gt;
  }&lt;br /&gt;
  public Enumeration getApplets() {&lt;br /&gt;
    return null;&lt;br /&gt;
  }&lt;br /&gt;
  public void showDocument(URL url) {&lt;br /&gt;
    System.out.println(&amp;quot;Showing document &amp;quot; + url);&lt;br /&gt;
  }&lt;br /&gt;
  public void showDocument(URL url, String frame) {&lt;br /&gt;
    try {&lt;br /&gt;
      showDocument(new URL(url.toString() + frame));&lt;br /&gt;
    } catch (MalformedURLException e) {&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public void showStatus(String message) {&lt;br /&gt;
    System.out.println(message);&lt;br /&gt;
  }&lt;br /&gt;
  public void setStream(String key, InputStream stream) throws IOException {&lt;br /&gt;
  }&lt;br /&gt;
  public InputStream getStream(String key) {&lt;br /&gt;
    return null;&lt;br /&gt;
  }&lt;br /&gt;
  public Iterator&amp;lt;String&amp;gt; getStreamKeys() {&lt;br /&gt;
    return null;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>