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

📄 help.java

📁 带注释的Java聊天程序
💻 JAVA
字号:
import java.awt.*;
import javax.swing.border.*;
import java.net.*;
import javax.swing.*;
import java.awt.event.*;


/**
 * 生成设置对话框的类
 */
public class Help extends JDialog {//创建对话框窗口的主要类。可以使用此类创建自定义的对话框,或者调用 JOptionPane 中的多个类方法来创建各种标准对话框。

	JPanel titlePanel = new JPanel();
	JPanel contentPanel = new JPanel();
	JPanel closePanel = new JPanel();

	JButton close = new JButton();
	JLabel title = new JLabel("聊天室服务端帮助");//JLabel 对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在其显示区内垂直居中对齐。
	JTextArea help = new JTextArea(); 

	Color bg = new Color(255,255,255);//创建具有指定红色、绿色和蓝色值的不透明的 sRGB 颜色,这些值都在 (0 - 255) 

	public Help(JFrame frame) {//JFrame 包含一个 JRootPane 作为其唯一的子容器。根据规定,根窗格所提供的内容窗格应该包含 JFrame 所显示的所有非菜单组件。
		super(frame, true);//
		try {
			jbInit();
		}
		catch (Exception e) {
			e.printStackTrace();//将此 throwable 及其追踪输出到指定的输出流。 
		}
		//设置运行位置,使对话框居中
		Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();//获取默认工具包。获取屏幕的大小。
		//Dimension 类封装单个对象中组件的宽度和高度(精确到整数)。该类与组件的某个属性关联。由 Component 类和 LayoutManager 接口定义的一些方法将返回 Dimension 对象。 

		this.setLocation( (int) (screenSize.width - 400) / 2,//将组件移到新位置。通过此组件父级坐标空间中的 x 和 y 参数来指定新位置的左上角。
						(int) (screenSize.height - 320) / 2);
		this.setResizable(false);//设置此 dialog 是否可以由用户调整大小
	}

	private void jbInit() throws Exception {
		this.setSize(new Dimension(400, 200));//构造一个 Dimension,并将其初始化为指定宽度和高度
		this.setTitle("帮助");
		
		titlePanel.setBackground(bg);;//设置此组件的背景色。背景色仅在组件是不透明时才使用,并且只能由 JComponent 或 ComponentUI 实现的子类使用。
		contentPanel.setBackground(bg);
		closePanel.setBackground(bg);
		
		help.setText("1、设置服务端的侦听端口(默认端口为8888)。\n"+
			"2、点击 启动服务 按钮便可在指定的端口启动服务。\n"+
			"3、选择需要接受消息的用户,在消息栏中写入消息,之后便可发送消息。\n"+
			"4、信息状态栏中显示服务器当前的启动与停止状态、"+
			"用户发送的消息和\n      服务器端发送的系统消息。");
		help.setEditable(false);//设置指定的 boolean 变量,以指示此 TextComponent 是否应该为可编辑的。当状态更改时,将触发 PropertyChange 事件("editable")。 

		titlePanel.add(new Label("              "));
		titlePanel.add(title);//聊天室服务端帮助
		titlePanel.add(new Label("              "));

		contentPanel.add(help);

		closePanel.add(new Label("              "));
		closePanel.add(close);
		closePanel.add(new Label("              "));

		Container contentPane = getContentPane();
		contentPane.setLayout(new BorderLayout());//设置此容器的布局管理器。 
		contentPane.add(titlePanel, BorderLayout.NORTH);//聊天室服务端帮助 北
		contentPane.add(contentPanel, BorderLayout.CENTER);//帮助 中 将指定组件添加到此容器中。
		contentPane.add(closePanel, BorderLayout.SOUTH);//退出 南

		close.setText("关闭");//设置按钮的文本。 
		//事件处理
		close.addActionListener(
			new ActionListener() {
				public void actionPerformed(ActionEvent e) {
					dispose();
				}
			}
		);
	}
}

⌨️ 快捷键说明

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