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

📄 chatserver.java~1~

📁 java编写的聊天室,采用最新的面向对象技术编写,类似QQ的聊天室源程序
💻 JAVA~1~
字号:

import java.awt.*;
import java.awt.event.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;
import javax.swing.JButton;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JTextArea;
import java.awt.BorderLayout;
import javax.swing.JScrollPane;

public class ChatServer extends JFrame {
    JPanel contentPane;
    BorderLayout borderLayout1 = new BorderLayout();
    JMenuBar jMenuBar1 = new JMenuBar();
    JMenu jMenuManager = new JMenu();
    JMenuItem jMenuManagerStart = new JMenuItem();
    JMenu jMenuHelp = new JMenu();
    JMenuItem jMenuHelpAbout = new JMenuItem();
    JLabel statusBar = new JLabel();
    JMenuItem jMenuStop = new JMenuItem();
    JMenu jMenuSetting = new JMenu();
    JMenuItem jMenuPort = new JMenuItem();
    JScrollPane jScrollPane1 = new JScrollPane();
    JTextArea jTextArea1 = new JTextArea();
    
    public ChatServer() {
        try {
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
        //sc = new SocketClient();
    }

    /**
     * Component initialization.
     *
     * @throws java.lang.Exception
     */
    private void jbInit() throws Exception {
        contentPane = (JPanel) getContentPane();
        contentPane.setLayout(borderLayout1);
        setSize(new Dimension(400, 300));
        setTitle("Server");
        statusBar.setText(" ");
        jMenuManager.setFont(new java.awt.Font("宋体", Font.PLAIN, 11));
        jMenuManager.setActionCommand("File");
        jMenuManager.setText("管理");
        jMenuManagerStart.setText("启动服务");
        jMenuManagerStart.addActionListener(new
                                        ChatServer_jMenuFileExit_ActionAdapter(this));
        jMenuHelp.setText("帮助");
        jMenuHelpAbout.setText("关于");
        jMenuHelpAbout.addActionListener(new
                                         ChatServer_jMenuHelpAbout_ActionAdapter(this));
        jMenuStop.setText("停止服务");
        jMenuStop.addActionListener(new ChatServer_jMenuStop_actionAdapter(this));
        jMenuSetting.setText("设置");
        jMenuPort.setText("端口号");
        jMenuPort.addActionListener(new ChatServer_jMenuPort_actionAdapter(this));
        jMenuBar1.setFont(new java.awt.Font("宋体", Font.PLAIN, 12));
        jMenuBar1.add(jMenuManager);
        jMenuBar1.add(jMenuSetting);
        jMenuManager.add(jMenuManagerStart);
        jMenuManager.add(jMenuStop);
        jMenuBar1.add(jMenuHelp);
        jMenuHelp.add(jMenuHelpAbout);
        setJMenuBar(jMenuBar1);
        contentPane.add(statusBar, BorderLayout.SOUTH);
        contentPane.add(jScrollPane1, java.awt.BorderLayout.CENTER);
        jScrollPane1.getViewport().add(jTextArea1);
        jMenuSetting.add(jMenuPort);
    }

    /**
     * File | Exit action performed.
     *
     * @param actionEvent ActionEvent
     */

    /**
     * Help | About action performed.
     *
     * @param actionEvent ActionEvent
     */
    void jMenuHelpAbout_actionPerformed(ActionEvent actionEvent) {
        ChatServer_AboutBox dlg = new ChatServer_AboutBox(this);
        Dimension dlgSize = dlg.getPreferredSize();
        Dimension frmSize = getSize();
        Point loc = getLocation();
        dlg.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x,
                        (frmSize.height - dlgSize.height) / 2 + loc.y);
        dlg.setModal(true);
        dlg.pack();
        dlg.setVisible(true);
    }

    public static void main(String[] args) {
        ChatServer server = new ChatServer();
        server.show();
    }

    public void jMenuManagerStart_actionPerformed(ActionEvent e) {
        System.out.println("Start");
    }

    public void jMenuStop_actionPerformed(ActionEvent e) {
        System.out.println("Stop");
    }

    public void jMenuPort_actionPerformed(ActionEvent e) {
        PortSetDialog dlg = new PortSetDialog(this,"端口设置",true);
        Dimension dlgSize = dlg.getPreferredSize();
        Dimension frmSize = getSize();
        Point loc = getLocation();
        dlg.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x,
                        (frmSize.height - dlgSize.height) / 2 + loc.y);
        dlg.setModal(true);
        dlg.pack();
        dlg.setVisible(true);
    }
}


class ChatServer_jMenuPort_actionAdapter implements ActionListener {
    private ChatServer adaptee;
    ChatServer_jMenuPort_actionAdapter(ChatServer adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuPort_actionPerformed(e);
    }
}


class ChatServer_jMenuFileExit_ActionAdapter implements ActionListener {
    ChatServer adaptee;

    ChatServer_jMenuFileExit_ActionAdapter(ChatServer adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent actionEvent) {
        adaptee.jMenuManagerStart_actionPerformed(actionEvent);
    }
}


class ChatServer_jMenuStop_actionAdapter implements ActionListener {
    private ChatServer adaptee;
    ChatServer_jMenuStop_actionAdapter(ChatServer adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuStop_actionPerformed(e);
    }
}


class ChatServer_jMenuHelpAbout_ActionAdapter implements ActionListener {
    ChatServer adaptee;

    ChatServer_jMenuHelpAbout_ActionAdapter(ChatServer adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent actionEvent) {
        adaptee.jMenuHelpAbout_actionPerformed(actionEvent);
    }
}

⌨️ 快捷键说明

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