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

📄 applynum.java

📁 上传的聊天系统程序与QQ程序差不多,只是功能没有QQ那么强大
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.*;
import java.net.*;

public class applynum extends JFrame implements ActionListener
{
   JFrame frame = new JFrame();
   JFrame f=new JFrame();
   JPanel contentPane;
   JPanel messagepanel;  
   TextField petname_txt,sign_txt;
   JPasswordField repass_txt,password_txt;
   JButton confim ,cancel;
   JLabel label1,label2,label3,label4;
   Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); //获得屏幕尺寸
   
   Socket soc=null;
   DataInputStream dis=null;          //定义用来实现客户端接受服务器数据的输入流
   DataOutputStream dos=null;          //定义用来实现从客户端发送数据到服务器的输出流 
   
   public applynum(JFrame f)
   {
   	  this.f=f;
   	  frame.setTitle("申请PP号码");
   	  contentPane=(JPanel)frame.getContentPane();
   	  contentPane.setLayout(null);
   	  contentPane.setBackground(new Color(109,190,255));
   	  
   	  messagepanel=new JPanel();
   	  messagepanel.setLayout(null);
   	  messagepanel.setBounds(0,0,330,250);
   	  messagepanel.setBackground(new Color(109,190,255));
   	  
   	  label1=new JLabel();
   	  label1.setText("昵    称");
   	  label1.setBounds(20,20,60,20);
   	  messagepanel.add(label1);
   	  
   	  label2=new JLabel();
   	  label2.setText("密    码");
   	  label2.setBounds(20,60,60,20);
   	  messagepanel.add(label2);
   	  
   	  label3=new JLabel();
   	  label3.setText("确认密码");
   	  label3.setBounds(20,100,60,20);
   	  messagepanel.add(label3);
   	  
   	  label4=new JLabel();
   	  label4.setText("个性签名");
   	  label4.setBounds(20,140,60,20);
   	  messagepanel.add(label4);
   	  
   	  petname_txt=new TextField();
   	  petname_txt.setBounds(90,20,150,20);
   	  petname_txt.setText(null);
   	  messagepanel.add(petname_txt);
   	  
   	  password_txt=new JPasswordField();
   	  password_txt.setBounds(90,60,150,20);
   	  password_txt.setBorder(new BevelBorder(BevelBorder.LOWERED));
   	  password_txt.setText(null);
   	  messagepanel.add(password_txt);
   	  
   	  repass_txt=new JPasswordField();
   	  repass_txt.setBounds(90,100,150,20);
   	  repass_txt.setBorder(new BevelBorder(BevelBorder.LOWERED));
   	  repass_txt.setText(null);
   	  messagepanel.add(repass_txt);
   	  
   	  sign_txt=new TextField();
   	  sign_txt.setBounds(90,140,150,20);
   	  sign_txt.setText(null);
   	  messagepanel.add(sign_txt);
   	  
   	  confim=new JButton();
   	  confim.setBounds(120,180,60,25);
   	  confim.setBackground(new Color(169,215,255));
   	  confim.setText("确认");
   	  confim.setToolTipText("点击后提交申请");
   	  confim.setBorder(new BevelBorder(BevelBorder.RAISED));
   	  messagepanel.add(confim);
   	  confim.addActionListener(this);
   	  
   	  cancel=new JButton();
   	  cancel.setBounds(190,180,60,25);
   	  cancel.setBackground(new Color(169,215,255));
   	  cancel.setText("取消");
   	  cancel.setToolTipText("退出申请回到登录界面");
   	  cancel.setBorder(new BevelBorder(BevelBorder.RAISED));
   	  messagepanel.add(cancel);
   	  
   	  cancel.addActionListener(this);
   	  contentPane.add(messagepanel);
   	  
   	  frame.setSize(330,250);
   	  frame.addWindowListener(new WindowAdapter()
      {  
         public void windowClosing(WindowEvent e)
         {  
            frame.setVisible(false);
            return;
         }
      });
   	  frame.setLocation(screenSize.width/2-165,screenSize.height/2-125);  //使得窗口居中显示
   	  frame.setVisible(true);
   	  frame.setResizable(false);
   }
   
   
   public void actionPerformed(ActionEvent e) 
   {
   	  if(e.getSource()==confim)
   	  {
   	      if(!petname_txt.getText().equals("")&&!password_txt.getText().equals("")&&!sign_txt.getText().equals("")
   	         &&password_txt.getText().equals(repass_txt.getText()))
   	       {   
   	          try
   	          {
	   	          soc=new Socket("localhost",1234);    //使用端口1234实例化一个本地套接字
				  dis=new DataInputStream(soc.getInputStream());           //将dis指向soc的输入流
	              dos=new DataOutputStream(soc.getOutputStream());           //将dos指向soc的输出流
	   	          send();
   	          }
   	          catch (Exception f){}
   	       }
   	      else if(petname_txt.getText().equals("")||password_txt.getText().equals("")||sign_txt.getText().equals(""))
   	      {
   	      	JFrame ff=new JFrame();
   	      	JOptionPane.showMessageDialog(ff,"请填写完整的信息!","警告",JOptionPane.WARNING_MESSAGE);
 		  }
 		  else if(!password_txt.getText().equals(repass_txt.getText()))
 		  {
 		  	JFrame ff=new JFrame();
   	      	JOptionPane.showMessageDialog(ff,"确认密码与设定的密码不同!","警告",JOptionPane.WARNING_MESSAGE);
 		  }
   	  }
   	  else
   	  {
   	  	 frame.setVisible(false);
   	  	 f.setVisible(true);
   	  }
   } 
   
   public void send()
   {
   	   String msgs=new String("APPLY:");        //定义并实例化一个字符串存储发送的聊天信息,其中MSG为关键词
	   try
	   {
		   msgs=msgs+petname_txt.getText()+":";
		   msgs=msgs+password_txt.getText()+":";
		   msgs=msgs+sign_txt.getText()+":";
		   msgs=msgs+InetAddress.getLocalHost().toString();
		   System.out.println(msgs);
		   dos.writeUTF(msgs);          //用输出流发送聊天信息
		   msgs=dis.readUTF();
		   JFrame ff=new JFrame();
		   JOptionPane.showMessageDialog(ff,msgs,"恭喜",JOptionPane.WARNING_MESSAGE);
		   dos.writeUTF("QUIT");
	   }
	   catch(IOException e)
       {
           System.out.println("Error:"+e);
       } 
   }
}   

⌨️ 快捷键说明

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