- importjava.io.*;
- importjava.net.*;
- importjavax.swing.*;
- importjava.awt.*;
- importjava.awt.event.*;
- classclientThreadextendsEdClientimplementsRunnable
- {
- publicvoidrun(){
- //TODOAuto-generatedmethodstub
- try{
- Thread.sleep(20);
- receiveString=bufferReader.readLine();
- System.out.println("receive:"+receiveString);
- receiveText.setText(receiveString);
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }catch(InterruptedExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }
- }
- }
- publicclassEdClient{
- /**
- *thisisclient
- */
- JFrameframe;
- JPanelpanel;
- staticJTextFieldipText;
- staticJTextFieldportText;
- staticStringip="127.0.0.1";//ipaddress
- staticintport=5000;//port
- staticJButtonsentConfirm;
- staticSocketsock;
- staticBufferedReaderbufferReader;
- staticStringreceiveString,transferString;
- staticJTextFieldtransferText,receiveText;
- staticbooleanflag=false;
- publicvoidui()
- {
- frame=newJFrame("聊天客户端_徐方鑫");
- panel=newJPanel();
- frame.add(panel);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- BoxpanelBox=Box.createVerticalBox();
- panel.add(panelBox);
- Boxipmain=Box.createHorizontalBox();
- panelBox.add(newJLabel(""));
- panelBox.add(ipmain);
- {
- JLabelipLabel=newJLabel("ip:");
- ipText=newJTextField("127.0.0.1",15);
- ipText.setHorizontalAlignment(JTextField.CENTER);//aligncenter
- ipmain.add(ipLabel);
- ipmain.add(ipText);
- JLabelportLabel=newJLabel("port:");
- portText=newJTextField("5000",8);
- portText.setHorizontalAlignment(JTextField.CENTER);
- ipmain.add(portLabel);
- ipmain.add(portText);
- }
- Boxipconfirm=Box.createHorizontalBox();
- panelBox.add(ipconfirm);
- /*
- JButtonipButton1=newJButton("连接");
- {
- ipButton1.addActionListener(newActionListener()
- {
- publicvoidactionPerformed(ActionEvente)
- {
- ip=ipText.getText();
- port=Integer.valueOf(portText.getText()).intValue();
- System.out.println(ip);
- System.out.println(port);
- RunnablethreadServer=newclientThread();
- finalThreadmythread=newThread(threadServer);
- netConnect();
- mythread.start();
- }
- });
- }
- */
- JButtonipButton2=newJButton("重置");
- {
- ipButton2.addActionListener(newActionListener()
- {
- publicvoidactionPerformed(ActionEvente)
- {
- ipText.setText("127.0.0.1");
- portText.setText("5000");
- try{
- sock.close();
- //transferText.setText(null);
- //receiveText.setText(null);
- }catch(IOExceptione1){
- //TODOAuto-generatedcatchblock
- e1.printStackTrace();
- }
- }
- });
- }
- //ipconfirm.add(ipButton1);
- //ipconfirm.add(ipButton2);
- BoxreceiveMain=Box.createHorizontalBox();
- panelBox.add(receiveMain);
- {
- JLabelreceive=newJLabel("接收:");
- receiveMain.add(receive);
- receiveText=newJTextField(20);
- receiveMain.add(receiveText);
- receiveText.enable(false);
- }
- BoxtransferMain=Box.createHorizontalBox();
- panelBox.add(transferMain);
- {
- JLabeltransfer=newJLabel("发送:");
- transferMain.add(transfer);
- transferText=newJTextField(20);
- transferMain.add(transferText);
- }
- BoxtalkConfirm=Box.createHorizontalBox();
- panelBox.add(talkConfirm);
- {
- sentConfirm=newJButton("发送");
- talkConfirm.add(sentConfirm);
- talkConfirm.add(ipButton2);
- }
- frame.setSize(400,150);
- frame.setVisible(true);
- }
- publicstaticvoidnetConnect()
- {
- try{
- sock=newSocket(ip,port);
- InputStreamReaderreader=newInputStreamReader(sock.getInputStream());
- bufferReader=newBufferedReader(reader);
- }catch(IOExceptionex)
- {
- ex.printStackTrace();
- JOptionPane.showMessageDialog(null,"连接失败");
- }
- }
- publicstaticvoidmain(String[]args){
- //TODOAuto-generatedmethodstub
- EdCliented=newEdClient();
- ed.ui();
- sentConfirm.addActionListener(newActionListener()
- {
- publicvoidactionPerformed(ActionEvente)
- {
- try{
- ip=ipText.getText();
- port=Integer.valueOf(portText.getText()).intValue();
- System.out.println(ip);
- System.out.println(port);
- RunnablethreadServer=newclientThread();
- finalThreadmythread=newThread(threadServer);
- netConnect();
- mythread.start();
- transferString=transferText.getText();
- System.out.println("sent:"+transferString);
- PrintWriterwriter=newPrintWriter(sock.getOutputStream());
- writer.println(transferString);
- writer.flush();
- }catch(IOExceptione1){
- //TODOAuto-generatedcatchblock
- e1.printStackTrace();
- }
- }
- });
- }
- }
JAVA聊天器_客户端
最新推荐文章于 2024-09-20 15:32:13 发布