• 大小: 45.44MB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2023-06-16
  • 语言: Java
  • 标签: java  聊天程序  

资源简介

一个聊天软件,使用JAVAFX来做界面,实现的功能有登入注册,找回密码,更改头像,发送接收消息,查看好友资料,修改好友备注,好友是否在线的提示,消息的提示,气泡的大小自动改变,标为已读未读,清除聊天记录,删除好友,添加好友,好友备注,搜索好友,个人资料的修改查看,设置,聊天助手的提示,右键菜单等功能。

资源截图

代码片段和文件信息

package Controller;

import Model.*;
import Model.Data.MsgData;
import Model.Data.Userdata;
import View.Alert;
import View.*;
import View.Dialog;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.control.*;
import javafx.scene.input.KeyCode;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import java.util.Vector;
import java.util.regex.Pattern;

/**
 * 页面控制类 所有页面的控制 包含的方法  exec() 和 $()
 * 包含的属性为View包下的页面类
 */
public class Controller {
    private Dialog dialog;
    private Register register;
    private Forget forget;
    private MainWindow mainWindow;
    public static Userdata userdata;
    private Homepage homepage;
    public static DatabaseModel database;
    private AlterPerson alterPerson;
    public static FriendPage friendPage;
    public static SearchFriend searchFriend;
    private HeadProtrait headProtrait;
    private String friendName;
    private String friendHead;
    public static Alert alert;

    public Controller() throws IOException {
        dialog = new Dialog();
        register = new Register();
        userdata = new Userdata();
        database = new DatabaseModel();
        forget = new Forget();
        mainWindow = new MainWindow();
        homepage = new Homepage();
        alterPerson = new AlterPerson();
        alert = new Alert();
        friendPage = new FriendPage();
        searchFriend = new SearchFriend();
        headProtrait = new HeadProtrait();
        MsgData.msg = new Vector<>();
        MsgData.MsgMap = new HashMap<>();
        MsgData.accountList = new Vector<>();
        database.connect();
        dialog.show();
    }

    /**
     * 该方法实现各个页面的各种交互 例如点击当前页面的按钮 跳转至另一个页面 所有功能集合
     *
     * @throws ClassNotFoundException
     */
    public void exec() throws ClassNotFoundException {
        headProtrait.setModailty(register);
        headProtrait.setModailty(alterPerson);
        alert.setModailty(mainWindow);
        alert.setModailty(searchFriend);
        ChatManager.getInstance().setMainWindow(mainWindow);
        initEvent();
        dialogExec();
        forgetExec();
        alterPersonExec();
        registerExec();
        sendMsgExec();
        OptionHead();
        SearchFriends();
        find();
        FriendInfo();
        saveRemark();
        dialog.show();
    }

    /**
     * 初始化事件
     */
    public void initEvent() {
        ((Button) $(dialog “register“)).setOnAction(event -> {
            dialog.hide();
            dialog.clear();
            register.show();
        });
        ((Button) $(register “back“)).setOnAction(event -> {
            register.hide();
            register.clear();
            dialog.show();
        });
        ((Button) $(dialog “getBack“)).setOnAction(event -> {
            dialog.hide();
            dialog.clear(“Password“);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-01-26 15:42  WeChat\.idea\
     目录           0  2017-11-25 11:34  WeChat\.idea\artifacts\
     文件         734  2017-11-25 11:34  WeChat\.idea\compiler.xml
     文件         189  2017-11-25 11:34  WeChat\.idea\description.html
     文件         171  2017-11-25 11:34  WeChat\.idea\encodings.xml
     文件         218  2017-11-25 11:34  WeChat\.idea\gradle.xml
     目录           0  2017-11-25 11:37  WeChat\.idea\inspectionProfiles\
     文件         489  2017-11-25 11:34  WeChat\.idea\misc.xml
     文件         259  2017-11-25 11:37  WeChat\.idea\modules.xml
     文件        8919  2017-11-25 11:34  WeChat\.idea\uiDesigner.xml
     文件         173  2017-11-25 11:34  WeChat\.idea\vcs.xml
     文件       72770  2018-01-26 15:42  WeChat\.idea\workspace.xml
     目录           0  2017-12-05 17:42  WeChat\java\
     目录           0  2017-12-05 17:42  WeChat\java\net\
     文件         133  2017-12-05 17:42  WeChat\java\net\annotations.xml
     目录           0  2017-11-27 00:09  WeChat\javafx\
     目录           0  2017-12-02 15:29  WeChat\javafx\scene\
     目录           0  2017-12-02 15:30  WeChat\javafx\scene\control\
     文件          15  2017-12-02 15:30  WeChat\javafx\scene\control\annotations.xml
     目录           0  2017-11-27 00:09  WeChat\javafx\scene\layout\
     文件         135  2017-11-27 00:09  WeChat\javafx\scene\layout\annotations.xml
     目录           0  2017-11-25 11:37  WeChat\out\
     目录           0  2017-11-25 11:37  WeChat\out\production\
     目录           0  2018-01-25 22:12  WeChat\out\production\WeChat\
     目录           0  2018-01-25 22:12  WeChat\out\production\WeChat\Controller\
     文件       21490  2018-01-25 22:12  WeChat\out\production\WeChat\Controller\Controller.class
     目录           0  2018-01-23 22:43  WeChat\out\production\WeChat\Main\
     文件         650  2018-01-23 22:43  WeChat\out\production\WeChat\Main\Main.class
     目录           0  2018-01-25 23:32  WeChat\out\production\WeChat\Model\
     文件        6362  2018-01-25 17:14  WeChat\out\production\WeChat\Model\ChatManager$1.class
     文件        2553  2018-01-25 17:14  WeChat\out\production\WeChat\Model\ChatManager.class
............此处省略297个文件信息

评论

共有 条评论