⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sendmessage.java

📁 个人编写的即时网络通信软件
💻 JAVA
字号:
import java.io.*;
import java.awt.*;
import java.net.*;
import javax.swing.*;
import java.util.*;
import java.awt.event.*;
public class SendMessage extends JFrame implements ActionListener
{
    private JLabel Label1=new JLabel("聊天记录");
    private JLabel Label2=new JLabel("发送消息");
    private JTextArea upText=new JTextArea();
    private JTextArea downText=new JTextArea();
    private JButton sendButton=new JButton("发送");
    private JButton deleteButton=new JButton("关闭");
    private JScrollPane aJScrollPane;
    private  String itsName;
    private String itsIp;
    private DatagramPacket sendPacket,receivePacket;
    private DatagramSocket sendSocket,receiveSocket;
    private int sendPort;
    private String myname;
    public SendMessage(DatagramSocket a1,DatagramSocket a2,int a3)
    {
        sendSocket=a1;
        receiveSocket=a2;
        sendPort=a3;
        String title="谈话中";
        this.setTitle(title);
        this.setBounds(100,100,400,300);
        this.setVisible(true);
        this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        Container c=this.getContentPane();
        c.setLayout(new BorderLayout());
        JPanel panel1=new JPanel();
        panel1.setLayout(new BorderLayout());
        panel1.setBorder(BorderFactory.createLineBorder(Color.black));        
        upText.setLineWrap(true);
        aJScrollPane=new JScrollPane(upText);
        panel1.add(Label1,BorderLayout.NORTH);
        panel1.add(aJScrollPane,BorderLayout.CENTER);
        JPanel panel3=new JPanel();
        panel3.setLayout(new BorderLayout());
        panel3.setBorder(BorderFactory.createLineBorder(Color.black));
        panel3.add(Label2,BorderLayout.NORTH);
        panel3.add(downText);
        panel1.add(panel3,BorderLayout.SOUTH);
        c.add(panel1,BorderLayout.CENTER);
        JPanel panel2=new JPanel();
        sendButton.addActionListener(this);
        panel2.add(sendButton);
        deleteButton.addActionListener(this);
        panel2.add(deleteButton);
        c.add(panel2,BorderLayout.SOUTH);
        c.validate();
        this.addWindowListener(new WindowAdapter()
        {
            public void windowClosing(WindowEvent event)
            {
               dispose();
            }
        }
        );
    }
    public String getUpTextString()
    {
        return upText.getText();
    }
    public void setUpTextString(String s1,String s2)
    {
         upText.append(s2+":"+s1);
         upText.append("\n");
    }
    public String getItsIp()
    {
        return itsIp;
    }
    public void setItsIp(String s)
    {
         itsIp=s;
    }
    public String getItsName()
    {
        return itsName;
    }
    public void setItsName(String s)
    {
         itsName=s;
    }
    public String getMyName()
    {
        return myname;
    }
    public void setMyName(String s)
    {
         myname=s;
    }
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource()==sendButton)
       {
            try
            {            
                String s1=downText.getText();
                String s2=upText.getText();
                byte[] data=s1.getBytes();               
                sendPacket=new DatagramPacket(data,s1.length(),InetAddress.getByName(itsIp),sendPort);
                sendSocket.send(sendPacket); 
                downText.setText(" ");
                upText.append(myname+":"+s1);
                upText.append("\n");
             //   this.dispose();
            }
            catch (UnknownHostException ex1) 
            {
                    ex1.printStackTrace();
            }
            catch (IOException ex2)
            {
                    ex2.printStackTrace();
            }
       }
       if(e.getSource()==deleteButton)
       {
            this.dispose();
           // this.setVisible(false);
       }
    }
    
    
    /*
    public static void main(String arg[])
    {
        SendMessage a=new SendMessage();
   }    
     */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -