Erstmal Hallo an alle !
Ich wollte eine kleine Client-Server Anwendung schrieben, in der Nachrichten (genauer gesagt 2 Koordinaten) über eine GUI (ein Textfeld für die x Koordinate, ein Textfeld für die y Koordinate und ein Button zum "abschicken") eingelesen werden und an den Server gesendet werden. Und zwar soll das Ganze in in einer Endlos-Schleife ablaufen - also jedes mal wenn der Benutzer mal Lust hat, kann er direkt die zwei Koordinaten an den Server senden.
Server seitig hab ich da keine Probleme mit (er liest einfach ständig in einem Thread die einkommenden Nachrichten...). Auch die GUI kann ich problemlos zusammenkleben, weiss allerdings nicht wie ich das in dem Client umsetzen soll (Methodenaufruf der Client Klasse durch die GUI?, Thread der auf GUI wartet?). Stehe grad voll auf der Leitung.
Wäre euch echt sehr verbunden wenn ihr mir weiterhelfen könntet.
hier der Client
Ich wollte eine kleine Client-Server Anwendung schrieben, in der Nachrichten (genauer gesagt 2 Koordinaten) über eine GUI (ein Textfeld für die x Koordinate, ein Textfeld für die y Koordinate und ein Button zum "abschicken") eingelesen werden und an den Server gesendet werden. Und zwar soll das Ganze in in einer Endlos-Schleife ablaufen - also jedes mal wenn der Benutzer mal Lust hat, kann er direkt die zwei Koordinaten an den Server senden.
Server seitig hab ich da keine Probleme mit (er liest einfach ständig in einem Thread die einkommenden Nachrichten...). Auch die GUI kann ich problemlos zusammenkleben, weiss allerdings nicht wie ich das in dem Client umsetzen soll (Methodenaufruf der Client Klasse durch die GUI?, Thread der auf GUI wartet?). Stehe grad voll auf der Leitung.
Wäre euch echt sehr verbunden wenn ihr mir weiterhelfen könntet.
hier der Client
Java:
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Client {
private BufferedReader in;
private BufferedWriter out;
private Socket client;;
private int port;
public Client(String host, int port){
this.host = host;
this.port = port;
}
public void startClient(){
try{
client = new Socket(host, port);
out = new BufferedWriter
(new OutputStreamWriter(client.getOutputStream()));
//hier endlosschleife mit Methodenaufruf sende(x,y) über GUI? o.O
out.close();
} catch (IOException e) { System.err.println(e); }
finally{
try{
if(client != null)
client.close();
}catch (IOException e) { System.err.println(e); }
}
}
public void sende(String x, String y)throws IOException{
out.write(x);
out.newLine();
out.flush();
out.write(y);
out.newLine();
out.flush();
}
public static void main(String[] args) {
new Client("localhost", 5000).startClient();
}
}