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

📄 hhl.java

📁 一个很好玩的小游戏
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
    namearea.setText(passname);
    namearea.setBounds(new Rectangle(56, 424, 155, 31));
    serviceip.setFont(new java.awt.Font("Dialog", 0, 14));
    serviceip.setText("选择服务器ip:");
    serviceip.setBounds(new Rectangle(222, 425, 100, 30));
    iparea.setFont(new java.awt.Font("Dialog", 0, 13));
    iparea.setText("127.0.0.1");//默认为本机ip
    iparea.setBounds(new Rectangle(311, 425, 100, 29));
    log.setBounds(new Rectangle(432, 424, 70, 30));
    log.setFont(new java.awt.Font("Dialog", 0, 14));
    log.setText("登录");
    sendarea.setText("");
    sendarea.setBounds(new Rectangle(113, 470, 314, 30));
    publicsend.setBounds(new Rectangle(429, 471, 70, 30));
    publicsend.setFont(new java.awt.Font("Dialog", 0, 14));
    publicsend.setText("公聊");
    personalsend.setBounds(new Rectangle(511, 471, 70, 30));
    personalsend.setFont(new java.awt.Font("Dialog", 0, 14));
    personalsend.setText("私聊");
    messagearea.setText("");
    messagearea.setEditable(false);
    jLabel1.setFont(new java.awt.Font("Dialog", 0, 20));
    jLabel1.setBorder(BorderFactory.createEtchedBorder());
    jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
    jLabel1.setFont(new java.awt.Font("楷体_GB2312", 1, 30));
    jLabel1.setText("翰海林聊天室-在线聊天");
    jLabel1.setBounds(new Rectangle(8, 6, 572, 97));
    f.add(personalsend, null);
    f.add(publicsend, null);
    f.add(sendarea, null);
    f.add(namearea, null);
    f.add(yourname, null);
    f.add(serviceip, null);
    f.add(iparea, null);
    f.add(log, null);
    f.add(jcbB, null);
    f.add(online, null);
    f.add(jScrollPane1, null);
    f.add(jLabel1, null);
    jScrollPane1.getViewport().add(messagearea, null);
  	f.setVisible(true);
    ll=new logListener();
	log.addActionListener(ll);
	sl=new sendListener();
	perS=new persendListener();
	publicsend.addActionListener(sl);
	personalsend.addActionListener(perS);
	this.setVisible(true);	
	this.setResizable(false);
  }
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING)
     {
     	if(clientChat != null)
     	{
   		 clientChat.disconnect();
		 uList.clear();             
		 online.setListData(uList);
		}
		 dispose();
     }
  }
class mydilog extends JDialog 
  {
  	JPanel jp;
  	JComboBox jcb1 = new JComboBox();
  	JLabel l1 = new JLabel();
  	JButton ok = new JButton("确定");
  	JButton cance = new JButton("取消");
  	String s[] = {"dd","dd","dd"};
  	
 mydilog()
  {
  	jp = (JPanel)this.getContentPane();
  	this.setTitle("你想做什么?");
  	this.setSize(300,150);
  	this.setLocation(400,200);
  	jp.setLayout(null);  
  	l1.setText("请选择你要做的事");
  	l1.setBounds(110,20,100,30);
  	jcb1.setBounds(110,50,150,25);
  	for(int k = 0;k<=2;k++)
  	jcb1.addItem(s[k]);
  	ok.setBounds(110,90,60,25);
  	cance.setBounds(200,90,60,25);
  	ok.addActionListener(new ActionListener()
  	{
  		public void actionPerformed(ActionEvent e)
  		{
  			dispose();
  		}
  	});
  	cance.addActionListener(new ActionListener()
  	{
  		public void actionPerformed(ActionEvent e)
  		{
  			dispose();
  		}
  	});
  	jp.add(ok,null);
  	jp.add(cance,null);
  	jp.add(jcb1,null); 
  	jp.add(l1,null); 	
  	this.setVisible(true);
  }
  	
  }
	class sendListener implements ActionListener
	{
					
		public void actionPerformed(ActionEvent evt)
		{
		if(log.getText()!="断开")
			{
				JOptionPane.showMessageDialog(null,"对不起,你还没有登陆!");
			}
		else if(log.getText()=="断开")
		{
			if (sendarea.getText().compareTo("")==0)
			{
				JOptionPane.showMessageDialog(null,"空消息不能发送!");
				return;
			}
			else if(sendarea.getText().compareTo("妈妈的")==0 || sendarea.getText().compareTo("鸟人")==0 || sendarea.getText().compareTo("fuck")==0)
          	{   if(kyou >= 3)
            		   {
							JOptionPane.showMessageDialog(null,"你的脏话过多,无权发送!");
            		   		try
      							{
      								clientChat.disconnect();
									log.setText("登录");
									uList.clear();             
									online.setListData(uList);
									iparea.setEditable(true);
									namearea.setEditable(true);
								}
							catch(Exception ioe){}
							return;
            		   } 
            		   
          			   kyou++;
            		   JOptionPane.showMessageDialog(null,"这是第"+kyou+"次警告!再发就屏蔽你!");            		            		  
            		   return;
           	}
           	else if(sendarea.getText().compareTo(s2) == 0)
           	{
           		JOptionPane.showMessageDialog(null,"不能连续发相同的信息!");
           		return;
           	}
			if(s1==null)
			clientservice.usrName=namearea.getText();
			else if(s1.compareTo("无表情")==0)
			clientservice.usrName=namearea.getText();
			else
			clientservice.usrName=namearea.getText()+s1+"地";
			s2 = sendarea.getText();
			clientservice.msg=sendarea.getText();
			clientservice.flag="say";
			sendarea.setText("");
			ts=new thSend();
			ts.start();
		}
	}
}

    class persendListener implements ActionListener
	{
		public void actionPerformed(ActionEvent evt)
		{
			String string = sendarea.getText();
			if(log.getText()!="断开")
			{
				JOptionPane.showMessageDialog(null,"对不起,你还没有登陆!");
			}
			else if(log.getText()=="断开")
			{
					if (string.compareTo("")==0)
					{
						JOptionPane.showMessageDialog(null,"空消息不能发送!");
					}
					else
					{          		 
					clientservice.usrName=namearea.getText();
					clientservice.msg=sendarea.getText();
					if (online.getSelectedValue()==null)
					{
						JOptionPane.showMessageDialog(null,"请选择发送人!");
						return;
					}
					else if(online.getSelectedValue().toString().compareTo(namearea.getText())==0)
					{
						JOptionPane.showMessageDialog(null,"你对你自己说的话还要写上来吗?");
						return;
					}
					else if(sendarea.getText().compareTo("妈妈的")==0 || sendarea.getText().compareTo("鸟人")==0 || sendarea.getText().compareTo("fuck")==0)
          		  	{          		  	   
            		   	if(kyou >= 3)
						{
							JOptionPane.showMessageDialog(null,"你的脏话过多,无权发送!");
							try
      							{
      								clientChat.disconnect();
									log.setText("登录");
									uList.clear();             
									online.setListData(uList);
									iparea.setEditable(true);
									namearea.setEditable(true);
								}
							catch(Exception ioe){}
							return;
						}
					   kyou++;
            		   JOptionPane.showMessageDialog(null,"这是第"+kyou+"次警告!再发就屏蔽你!");
            		   return;
           		 	}
           		 	else if(sendarea.getText().compareTo(s2) == 0)
           			{
           				JOptionPane.showMessageDialog(null,"不能连续发相同的信息!");
           				return;
           			}
					else 
					 {
			 			 clientservice.flag=(String)online.getSelectedValue();
			 			 s2 = string;	
			 			 sendarea.setText("");		 		
						
					 }
					 ts=new thSend();
					 ts.start();
					}
			}
		}
	}
	
	class logListener implements ActionListener
	{
		public void actionPerformed (ActionEvent evt)
		{
			String tempstring;
			int wakeup;
			JButton log;
			log=(JButton)evt.getSource();
			if (log.getText().compareTo("登录")==0)
			{
				if (namearea.getText().compareTo("")==0)
				{
					JOptionPane.showMessageDialog(null,"请输入用户名!难道要我叫你大笨蛋?");
					return;
				}
				else if (namearea.getText().length() > 7)
				{
				    JOptionPane.showMessageDialog(null,"呢称太长了!叫我怎么记啊?");
					return;
				}
				if (iparea.getText().compareTo("")==0)
				{
					JOptionPane.showMessageDialog(log,"请输入服务器IP!");
					return;
				};					
				if(checkyou >= 3) 
				{
					if(checkyou >= 5) 
					{
						JOptionPane.showMessageDialog(null,"你登陆的次数太多,无权登陆!");					
      					try
      					{
      						clientChat.disconnect();
							log.setText("登录");
							uList.clear();             
							online.setListData(uList);
							iparea.setEditable(true);
							namearea.setEditable(true);
						}
						catch(Exception ioe){}
						return;				
					}
					else						
						JOptionPane.showMessageDialog(null,"你这样玩,还是不是在聊天啊?");
				}
				if(kyou >= 3)
				{
					JOptionPane.showMessageDialog(null,"你的脏话过多,无权登陆!");
					return;	
				}
				name=namearea.getText();
				clientChat=new client(iparea.getText(),namearea.getText());
				wakeup=clientChat.connect();
				if (wakeup==0)
				{

					return;
				}

				clientget=(user)clientChat.get();
				if (clientget==null)
				{

					clientChat.disconnect();
					return;
				}
				if (clientget.flag.compareTo("MAX")==0)
				{

					clientChat.disconnect();
					return;
				}
				if (clientget.flag.compareTo("OK")==0)
				{

				}
				else
				{

					clientChat.disconnect();
					return;
				}
				
				messagearea.setText(clientget.msg);
				log.setText("断开");
				iparea.setEditable(false);
				checkyou++;
				namearea.setEditable(false);
				tr=new thReceive();
				tr.start();
			}
			else if (log.getText().compareTo("断开")==0)
			{
				clientChat.disconnect();
				log.setText("登录");
				uList.clear();             
				online.setListData(uList);
				iparea.setEditable(true);
				namearea.setEditable(true);
			}
		}
	}

	class thReceive extends Thread
	{

		public void run()
		{
			int i,j;
			String temp;
			try
			{
				while(true)
				{
					clientservice = (user)clientChat.get();
					if (clientservice.flag.compareTo("Login")==0)
					{
						uList.addElement(clientservice.usrName);
						online.setListData(uList);
					}
					if (clientservice.flag.compareTo("Logout")==0)
					{
						uList.removeElement(clientservice.usrName);
						online.setListData(uList);
					}
					
					if (clientservice.flag.compareTo("say")==0 || clientservice.flag.compareTo("Login")==0 || clientservice.flag.compareTo("Logout")==0 || clientservice.flag.compareTo(namearea.getText())==0)
				      {
				      	if(clientservice.flag.compareTo("Login")==0 || clientservice.flag.compareTo("Logout")==0 )
				      			messagearea.append("服务器消息:\n");
				      	
				      	else if(clientservice.usrName.compareTo(namearea.getText())==0)
				      	   			messagearea.append("你说: ");				      	
				      	else 
				      	   {
				      			messagearea.append(clientservice.usrName);
				      			if(clientservice.flag.compareTo(namearea.getText())==0)
				      			{
				      	    		messagearea.append(" 悄悄的对你说: ");
				      			}
				      			else
					    		{
					    			messagearea.append(" 说: ");
					    		}
					    	}
					     messagearea.append(clientservice.msg+"\n");
                      }
                     else if (clientservice.flag.compareTo("say")==0 || clientservice.flag.compareTo("Login")==0 || clientservice.flag.compareTo("Logout")==0 || clientservice.flag.compareTo(namearea.getText())!=0)
				      {
				      	if(clientservice.usrName.compareTo(namearea.getText())

⌨️ 快捷键说明

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