MaciekPaluch 0 Zgłoś post Napisano Czerwiec 10, 2015 Dzień dobry! Mam prosty program w Javie który ma za zadanie połączyć się z serwerem i wysyłać z terminala liczby. Chciałbym przerobić program by liczba była wysyłana po wciśnięciu przycisku. Tutaj obsługa przycisku który po wciśnięciu wywołuje metodę wyslijLiczbe /* tworze przycisk */ JButton b1; b1 = new JButton("Wyslij"); b1.addActionListener(this); /* obsługa ActionListenera */ public void actionPerformed(ActionEvent zdarzenie) { Object zrodlo = zdarzenie.getSource(); if (zrodlo == b1){ wyslijLiczbe(jakasliczba) } } Tutaj pozostały kod, do niego potrzebuje dopisać metodę wyslijLiczbe import java.io.*; import java.net.*; import java.util.*; public class Client { private Socket socket; /* Konstruktor próbuje połączyć się z serwerem */ Client() { try { socket = new Socket("localhost", 2020); System.out.println("Klient dziala"); } catch(IOException e) { System.out.println("Uruchom serwer"); System.exit(1); } } void uruchom() throws Exception { PrintWriter out = new PrintWriter( new OutputStreamWriter( socket.getOutputStream()),true); BufferedReader in = new BufferedReader( new InputStreamReader( socket.getInputStream())); Scanner czytacz = new Scanner(System.in); /* 2. Działanie klienta */ String liczba, odSerwera; while(true) { System.out.println("Podaj zgadywaną liczbę: "); liczba = czytacz.nextLine(); out.println(liczba); odSerwera = in.readLine(); System.out.println(odSerwera); if(odSerwera.equals("Zgadłeś")) break; } /* 3. Czynności po zakończeniu współpracy z serwerem */ socket.close(); }//koniec funkcji uruchom() public static void main(String args[]) throws Exception { Client client = new Client(); client.uruchom(); } } Próbowałem tak: void wyslijLiczbe(String zmienna) { out.println(zmienna); } Niestety nie działa.Wie ktoś jak to wykonać? Bardzo proszę o pomoc. Pozdrawiam! Udostępnij ten post Link to postu Udostępnij na innych stronach
wlodziu 49 Zgłoś post Napisano Czerwiec 13, 2015 Rozumiem, że nie printuje do konsoli tej liczby? Jesli tutaj już nawala, to popatrz w typ zmiennej w parametrze tej metody. A jeśli nie - to musisz dodać w metodzie wyslijLiczbe() elementy do uruchomienia obiektu klasy Client. I tam stworzyć metodę z parametrem, w którym będziesz trzymał liczbę do wysłania. Udostępnij ten post Link to postu Udostępnij na innych stronach