Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

8вариант / lab6 / Client

.java
Скачиваний:
13
Добавлен:
08.06.2018
Размер:
1.89 Кб
Скачать
import javax.swing.*;
import java.awt.*;
import java.io.*;
import java.net.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
public class Client {
	public static void main(String[] args) {
        JFrame frame = new JFrame("Chat");
        frame.setBounds(0, 0, 400, 500);
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        JLabel label = new JLabel();
        label.setText("<html>");
        JScrollPane scr = new JScrollPane(label, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
        JTextField inputField = new JTextField(50);

        try {
            InetAddress ipAdress = InetAddress.getByName("localhost");
            Socket socket = new Socket(ipAdress, 8080);
            BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
            PrintWriter writer = new PrintWriter(socket.getOutputStream(), true);

            ClientThread clientThread = new ClientThread(reader, writer, label);
            clientThread.start();

            inputField.addKeyListener(new KeyListener() {
                //@Override
                public void keyTyped(KeyEvent e) {}

                //@Override
                public void keyPressed(KeyEvent e) {
                    if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                        if (inputField.getText() != "") {

                            clientThread.toServer(inputField.getText());
                            inputField.setText("");
                        }
                    }
                }

                //@Override
                public void keyReleased(KeyEvent e) {}
            });
        } catch (IOException e) {
            e.printStackTrace();
        }

        frame.add(scr);
        frame.add(inputField, BorderLayout.SOUTH);
        frame.setVisible(true);
    }
}
Соседние файлы в папке lab6