A
Agent159
Gast
Hi, ich habe mir mal den Quelltext von dem Beispielchat von java.seite.net ausprobiert.
Diesen wollte ich jedoch in einem eigenem Frame haben.
Das habe ich auch noch schnell hinbekommen, doch leider versendet er nun keine Texte mehr, d.h. er reagiert nicht mehr auf die Enter-Taste...
Wäre echt nett, wenn mir einer helfen könnte.
PS:Bin JavaAnfänger xD (beachte nur des java)
Diesen wollte ich jedoch in einem eigenem Frame haben.
Das habe ich auch noch schnell hinbekommen, doch leider versendet er nun keine Texte mehr, d.h. er reagiert nicht mehr auf die Enter-Taste...
Code:
import java.net.*;
import java.io.*;
import java.awt.*;
import java.applet.*;
public class chatapplet extends Applet implements Runnable
{
public Frame f;
public static final int PORT = 2710;
Socket socket;
DataInputStream in;
PrintStream out;
TextField inputfield;
TextArea outputarea;
Choice choiceChannel;
List users;
Thread thread;
public void init()
{
f = new Frame("Agent159's knuddeliger Chat");
f.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
f.dispose();
} });
inputfield = new TextField();
outputarea = new TextArea();
users = new List();
outputarea.setFont( new Font("Dialog", Font.PLAIN, 12));
outputarea.setEditable(false);
f.add(inputfield);
f.add(outputarea);
f.add(users);
f.setLayout(new BorderLayout());
f.add("South", inputfield);
f.add("Center", outputarea);
f.add("East", users);
f.setBackground(Color.lightGray);
f.setForeground(Color.white);
inputfield.setBackground(Color.darkGray);
outputarea.setBackground(Color.darkGray);
users.setBackground(Color.darkGray);
f.pack();
f.setSize(800,600);
f.show();
}
public void start()
{
try
{
socket = new Socket(this.getCodeBase().getHost(), PORT);
in = new DataInputStream(socket.getInputStream());
out = new PrintStream(socket.getOutputStream());
say("Verbindung zum Server aufgenommen...");
} catch (IOException e)
{
this.showStatus(e.toString());
say("Verbindung zum Server fehlgeschlagen!");
//System.exit(1);
}
if (thread == null)
{
thread = new Thread(this);
thread.setPriority(Thread.MIN_PRIORITY);
thread.start();
}
}
public void stop()
{
try
{
socket.close();
} catch (IOException e)
{
this.showStatus(e.toString());
}
if ((thread !=null) && thread.isAlive())
{
thread.stop();
thread = null;
}
}
public void run()
{
String line;
try
{
while(true)
{
line = in.readLine();
if(line!=null)
outputarea.appendText(line+'\n' );
}
} catch (IOException e) { say("Verbindung zum Server abgebrochen"); }
}
public boolean action(Event e, Object what)
{
if (e.target==inputfield)
{
String inp=(String) e.arg;
out.println(inp);
inputfield.setText("");
return true;
}
return false;
}
public void say(String msg)
{
outputarea.appendText("*** "+msg+" ***\n");
}
}
Wäre echt nett, wenn mir einer helfen könnte.
PS:Bin JavaAnfänger xD (beachte nur des java)