# Umprogrammieren in ein Applet



## MJA (12. Dez 2004)

Hallo Zusammen!

Kann mir jemand helfen, wie ich das folgende Programm in ein Applet umgeschrieben kriege? Wäre nett, danke.


```
package com;

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.io.PrintStream; 
import java.net.Socket; 

public class Com 
{ 
	public static void main(String args[])
	{
		try 
	    { 
			BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
			System.out.println("Bitte geben Sie die IP des Rechners ein mit dem Sie sich verbinden wollen:");
			String ip = reader.readLine();
			Socket cs = new Socket(ip, 4003); 
	          
			Thread t1 = new Thread(new Output(cs)); 
			Thread t2 = new Thread(new Input(cs)); 
			t1.start();
			t2.start();
	    } 
	    catch (/*UnknownHostException is a*/ IOException e) 
	    { 
	       System.err.println("Es ist ein Fehler aufgetreten. Das Programm wird nun beendet."); 
	       return; 
	    } 
	}
}


class Output
extends Com
implements Runnable
{
	BufferedReader reader = null;
	PrintStream out = null;
	
	public Output(Socket cs)
	{
		reader = new BufferedReader(new InputStreamReader(System.in));
		try
		{
			out = new PrintStream(cs.getOutputStream());
		}
		catch (IOException e)
		{
			System.err.println("Es ist ein Fehler aufgetreten. Das Programm wird nun beendet."); 
		    return; 
		}
	}
	
	public void run()
	{
		while(true)
			try
			{
				out.print(reader.readLine());
			}
			catch (IOException e)
			{
				System.err.println("Es ist ein Fehler aufgetreten. Das Programm wird nun beendet."); 
			    return; 
			}
	}
}

class Input
extends Com
implements Runnable
{
	BufferedReader in = null;
	
	public Input(Socket cs)
	{
		try
		{
			in = new BufferedReader(new InputStreamReader(cs.getInputStream()));
		}
		catch (IOException e)
		{
			System.err.println("Es ist ein Fehler aufgetreten. Das Programm wird nun beendet."); 
		    return; 
		}
	}
	
	public void run()
	{
		while(true)
			try
			{
				System.out.println(in.readLine());
			}
			catch (IOException e)
			{
				System.err.println("Es ist ein Fehler aufgetreten. Das Programm wird nun beendet."); 
			    return; 
			}
	}
}
```

MfG
Jan


----------



## L-ectron-X (13. Dez 2004)

Ich weiß nicht, ob das so einfach geht, da sich Applets von Hause aus nur mit dem Rechner verbinden können, von dem sie herunter geladen wurden. Da macht alleine die Eingabe einer IP für einen Rechner schon wenig Sinn.


----------



## MJA (13. Dez 2004)

Sry, die IP kommt natürlich nicht mit ins Applet. Aber es geht mir generell darum dieses App in ein Applet umzuschreiben, ich hab leider noch kleine Probleme mit graphischen Oberflächen.

MfG
Jan


----------



## L-ectron-X (13. Dez 2004)

Nun ja, entweder Du liest mal einführende Lektionen z.B. hier:
http://www.galileocomputing.de/openbook/javainsel3/

Oder Du sagst mal, wie die Oberfläche aussehen soll.


----------



## MJA (14. Dez 2004)

Also die Java Insel kenn ich, hab sie ja als Buch (übrigens: Neue Version zu Java 5: http://www.galileocomputing.de/openbook/javainsel4/)

Zum Aussehen: Ein Label oder ein Textfeld zur Ausgabe der eingegangenen Strings und ein Eingabefeld plus Absenden-Button.

MfG
Jan


----------



## L-ectron-X (14. Dez 2004)

Also so etwas wie eine Chat- oder Messanger-GUI?
Wenn Du mal in der Insel liest, dürfte das aber kein Problem mehr sein.
Bei Applets sollte man aber noch eines bedenken. Sollen möglichst viele Leute die Oberfläche benutzen können, oder geht es um ein Maximum an Funktionalität oder Design und die Benutzer sind egal.

Edit: Wenn's gar nicht geht, helfe ich Dir weiter. Aber ich entwickle nichts, ohne Dein Zutun.


----------



## MJA (15. Dez 2004)

Also: Es geht nicht um einen Chat oder Messanger. Das Applet soll ein Online GUI zur Steuerung eines Roboters ein. Also das Programm sendet die Befehle an ein VB-Modul. Der sendet das ganze weiter an den Roboter.
Die Oberfläche muss weder eine besondere Design Leistung sein noch müssen viele Benutzer darauf zugreifen können. Alles recht simpel.
Mein Problem bei der Programmierung ist eine graphische Oberfläche zu programmieren, auch mit Hilfe der Insel hab ich das bis jetzt nicht hinbekommen.
Das du das nicht einfach alleine mal eben so für mich machst ist mir klar, ich will doch niemanden ausnutzen oder so! Ich versuche ja auch so viel es geht selbst du machen. Aber ich bin im Prinzip eigendlich noch Anfänger...

MfG
Jan


----------



## L-ectron-X (15. Dez 2004)

Schön und gut, nun weiß ich trotzdem noch nicht, wie das Ganze aussehen soll.
Willst Du den Roboter mit Textbefehlen oder per Buttonklicks steuern? Soll es eine Rückgabe (Ergebnismeldung) geben? Wenn Du mir mal ein paar Eckpunkte verrätst, kann ich mal eine kleine Beispiel-GUI schreiben, die Du dann erweitern kannst.


----------

