77范文网 - 专业文章范例文档资料分享平台

Java聊天室系统程序设计实验报告 - 图文(6)

来源:网络收集 时间:2019-03-09 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

private void warnMenuItemActionPerformed(ActionEvent evt) //警告事件 {

Object obj=evt.getSource(); try {

if(obj==warnMenuItem) {

BlackList=JOptionPane.showInputDialog(null,\请输入将警告的用户名:\系统消息\ }

User toUserMessage=new User();

toUserMessage.Message=\警告:请用文明用语!否则你将被强制退出!\\n\ toUserMessage.Command=\ ObjectOutputStream

streamToUser=(ObjectOutputStream)Server.vectorStreamToUser.elementAt(Server.vectorUserList.indexOf(BlackList));

streamToUser.writeObject((User)toUserMessage); streamToUser.flush(); BlackList=\ }

catch(IOException e){} }

private void kickMenuItemActionPerformed(ActionEvent evt) //踢人事件 {

Object obj=evt.getSource(); try {

if(obj==kickMenuItem) {

BlackList=JOptionPane.showInputDialog(null,\请输入将强制退出的用户名:\系统消息\ }

User toUserMessage=new User();

for(int i=0;i

if(BlackList.equals(Server.vectorUserList.elementAt(i))) {

toUserMessage.Command=\

toUserMessage.Message=\系统消息:对不起!你已被强制退出!\\n\ } else {

toUserMessage.UserName=BlackList; toUserMessage.Command=\

toUserMessage.Message=\系统消息:\已被强制退出!\\n\

}

ObjectOutputStream

第 25 页 共 69 页

25

streamToUser=(ObjectOutputStream)Server.vectorStreamToUser.elementAt(i); streamToUser.writeObject((User)toUserMessage); streamToUser.flush(); }

Server.vectorStreamToUser.removeElementAt(Server.vectorUserList.indexOf(BlackList)); //服务器刷新

Server.vectorUserList.removeElement(BlackList);

jLabel5.setText(\共有:\个客户在线\ BlackList=\ }

catch(IOException e){} }

private void aboutMenuItemActionPerformed(ActionEvent evt) //关于事件 { }

private void helpMenuItemActionPerformed(ActionEvent evt) //帮助事件 { }

private void helpMenuActionPerformed(ActionEvent evt) { }

private void exitForm(WindowEvent evt) //退出事件 {

System.exit(0); } }

//UserLogin.java

import javax.swing.*; import java.awt.*;

import java.awt.event.*; import java.net.*; import java.io.*; import java.util.*;

import javax.swing.border.*; import java.applet.*;

import java.applet.AudioClip; import java.net.URL;

import java.net.MalformedURLException; import java.awt.GridBagLayout;

class User implements Serializable //用户信息类

第 26 页 共 69 页

26

{

String UserName; String UserPassword; String UserHeadPhoto; String UserEmail; String UserAge;

String SinkName; String FileName; byte FileData[];

String Message; String Command;

Vector vectorUserList; }

class IllegalLengthException extends Exception //自定义异常类 {}

public class UserLogin extends JFrame //联接服务器窗口类 {

// 登陆窗口变量声明

private User fromServerMessage; private User toServerMessage;

private static Vector vectorUserList;

private UserLoginWindow frameEnter;

private Frame frameLogin; private JPanel panelObject; private JLabel Label;

private JComboBox ComboBoxUserName;

private JPasswordField textUserPassword;

private JButton buttonLogin,buttonEnter,buttonExit;

private Socket toServer;

private ObjectOutputStream streamToServer; private ObjectInputStream streamFromServer; private BufferedReader fromServer;

//聊天室窗口变量声明

private JLabel jLabelUserName; private JButton jButtonHelp; private JButton jButtonLoginout; private JButton jButtonMusic; private JButton jButtonOption; private JButton jButtonSend; private JButton jButtonTran; private JCheckBox jCheckBox1; private JComboBox jComboBoxFace;

第 27 页 共 69 页

27

private JComboBox jComboBoxFontsize; private JComboBox jComboBoxFontstyle; private JComboBox jComboBoxUserlist; private JLabel jLabelBackground; private JLabel jLabelWelcome; private JList jList1;

private JScrollPane jScrollPane1; private JScrollPane jScrollPane2; public JTextArea jTextArea1; private JPanel jPanel1;

private JTextField jTextFieldMsg;

private String Face[]={\说\大声的说\开心的说\大笑着说\惊讶的说\忧郁的说\伤心的说\犹豫着说\

\怯怯的说\皱着眉头说\做了个鬼脸说\吐了吐舌头说\愁眉苦脸的说\

//设置服务器IP地址窗口变量声明

private static UserLogin frameServerIP;

private JButton jButtonNext; private JLabel jLabel1; private JPanel jPanel2; private JTextField jTextFieldIpaddress; String ServerIPaddress;

public UserLogin() {

initComponents(); //设置窗口位置居中 int

locationX=(int)(Toolkit.getDefaultToolkit().getScreenSize().getWidth()-getSize().getWidth())/2; int

locationY=(int)(Toolkit.getDefaultToolkit().getScreenSize().getHeight()-getSize().getHeight())/2;

setLocation(locationX,locationY); }

public static void main(String args[]) //主函数 {

JWindow mainpage=new JWindow(); mainpage.setSize(400,300); JPanel content = new JPanel(); content.setOpaque(false);

mainpage.getContentPane().add(content); content.setLayout(null);

ImageIcon background = new ImageIcon(\ JLabel backlabel = new JLabel(background);

content.add(backlabel, new Integer(Integer.MIN_VALUE));

backlabel.setBounds(0,0,background.getIconWidth(),background.getIconHeight()); mainpage.setLocation(200,150);

第 28 页 共 69 页

28

mainpage.setVisible(true); try {

content.setOpaque(false);

Thread.sleep(2000); }

catch(InterruptedException e){}

mainpage.setVisible(false); frameServerIP=new UserLogin(); frameServerIP.setVisible(true); }

private void jButtonNextActionPerformed(ActionEvent evt) //下一步按钮事件 {

ServerIPaddress=jTextFieldIpaddress.getText().toString();

StringTokenizer str=new StringTokenizer(ServerIPaddress,\ while (str.hasMoreTokens()) {

String IP1=str.nextToken(); String IP2=str.nextToken(); String IP3=str.nextToken(); String IP4=str.nextToken(); int ip1=Integer.parseInt(IP1); int ip2=Integer.parseInt(IP2); int ip3=Integer.parseInt(IP3); int ip4=Integer.parseInt(IP4);

if((ip1>=1&&ip1<=223)&(ip2>=0&&ip2<=255)&(ip3>=0&&ip3<=255)&(ip4>=1&&ip4<=254)) {

frameServerIP.setVisible(false); frameEnter=new UserLoginWindow(); frameEnter.setSize(400,320);

frameEnter.setVisible(true); } else {

JOptionPane.showMessageDialog(this,\您输入了非法的IP地址,请再输入一次!\

jTextFieldIpaddress.setText(\ }

break; } }

private void exitForm(java.awt.event.WindowEvent evt) //退出按钮事件 {

System.exit(0); }

class UserLoginWindow extends JFrame implements Runnable //登录窗口

第 29 页 共 69 页

29

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Java聊天室系统程序设计实验报告 - 图文(6)在线全文阅读。

Java聊天室系统程序设计实验报告 - 图文(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/501552.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: