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

📄 serverframe.java~1~

📁 是一个关于JQQ小程序
💻 JAVA~1~
字号:
package jqq.server;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

import java.awt.Color;


public class ServerFrame implements ActionListener
{
	ChatServer cs = new ChatServer();
	
	JFrame frame;
	JPanel pane;
	JTextArea jTexArea;
	JTextArea jTextAreaMsg;
	JScrollPane jsp;
	JScrollPane jspMsg;
	JLabel jLabelPort;
	JTextField jTextFiled;
	JButton jButton;
	JButton jButtonMsg;
	JButton jButtonCon;
	String stri = null;//服务器消息字符串
	boolean ServerButton = false;
	boolean ServerButtonMsg = false;

	public void setCharServer(ChatServer cs)
	{
		this.cs = cs;
	}
	
	public void startFrame()
	{
		frame = new JFrame("服务器");
		pane = new JPanel();
		jTexArea = new JTextArea();
		jTextAreaMsg = new JTextArea();
		jsp = new JScrollPane(jTexArea);
		jspMsg = new JScrollPane(jTextAreaMsg);
		jLabelPort = new JLabel("服务器端口号");
		jTextFiled = new JTextField("8888");
		jButton = new JButton("开启服务器");
		jButtonCon = new JButton("开启客服端连接");
		jButtonMsg = new JButton("发送服务器消息");

		pane.setLayout(null);
		jsp.setBounds(5, 10, 380, 230);
		jspMsg.setBounds(5,250,330,100);
		jLabelPort.setBounds(400,25,80,20);
		jTextFiled.setBounds(400,50,80,20);
		jButton.setBounds(392,100,125,30);
		jButtonMsg.setBounds(350,280,125,30);
		jButtonCon.setBounds(392,140,125,30);
		jButton.setBackground(new Color(130,170,130));
		jButtonMsg.setBackground(new Color(155,200,215));
		//jButtonCon.setBackground(new Color(155,200,215));
		jButtonCon.setEnabled(false);//默认为不可使用状态
		jButtonMsg.setEnabled(false);//默认为不可使用状态
		jTexArea.setLineWrap(true);
		jTexArea.setEditable(false);
		jTextAreaMsg.setToolTipText("在此处输入发送消息");
		pane.add(jsp);
		pane.add(jspMsg);
		pane.add(jLabelPort);
		pane.add(jTextFiled);
		pane.add(jButton);
		pane.add(jButtonMsg);
		pane.add(jButtonCon);
		frame.add(pane);
		frame.setResizable(false);
		
		jButton.addActionListener(this);
		
		jButtonMsg.setActionCommand("发送服务器消息");
		jButtonMsg.addActionListener(this);
		
		jButtonCon.setActionCommand("开启客服端连接");
		jButtonCon.addActionListener(this);
		
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setBounds(150, 120, 530, 280);
		//frame.setAlwaysOnTop(true);
		frame.setVisible(true);
		
		
		
	}

	public void actionPerformed(ActionEvent e)
	{
		ServerButton =true; //每次点击按钮事件默认改为服务器开启状态
		String str = e.getActionCommand(); 
	
		if(str.equals("开启客服端连接"))
		{
			Con();
		}
		 
		if(str.equals("开启服务器")) //设置是否可以使用
		{
			jTextFiled.setEnabled(false);
			jButtonCon.setEnabled(true);
			jButtonMsg.setEnabled(true);
			ServerButton = true;
			frame.setSize(530, 400);
			start(); //启动服务器
		}
		else if(str.equals("关闭服务器"))
		{
			jTextFiled.setEnabled(true);
			ServerButton = false;
			frame.setSize(530, 280);
			close();
		}
		
		if(ServerButton==false) //设置按钮颜色转换
		{	
			jButton.setText("开启服务器");
			jButton.setBackground(new Color(130,170,130));
			ServerButton=true;
		}
		else if(ServerButton==true)
		{
			jButton.setText("关闭服务器");
			jButton.setBackground(new Color(210,130,120));
			ServerButton=false;
		}
		
		if(str.equals("发送服务器消息")) //设置按钮颜色转换
		{	
			stri = jTextAreaMsg.getText();
			if(stri.equals(""))
			{
				JOptionPane.showMessageDialog(frame,"发送的消息不能为空!");
			}
			else
			{
				jTexArea.append("服务器消息:");
				jTexArea.append("\n");
				jTexArea.append(stri);
				jTextAreaMsg.setText("");
				jTexArea.append("\n");
			}
		}
		frame.validate();
	}
	
	public void start()
	{
		cs.startServer(Integer.valueOf(jTextFiled.getText()));
		jTexArea.append("服务器启动!");
		jTexArea.append("\n");
	}
	
	public void close()
	{
		jTexArea.append("服务器关闭!");
		JOptionPane.showMessageDialog(frame,"服务器成功关闭,程序退出!");
		System.exit(0);
	}
	
	public void Con()
	{
		jTexArea.append("连接开启,客户端可连接状态!");
		jButtonCon.setEnabled(false);
		//cs.listen();
	}
	
	

}

⌨️ 快捷键说明

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