📄 help.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 + -