📄 chatwin.java
字号:
package com.neusoft.course.gui;
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
public class ChatWin extends Frame{
private Panel panel = new Panel();
private TextField in = new TextField();
private TextArea out = new TextArea();
private Button bSend = new Button("send");
private Button bClose = new Button("close");
private MenuBar bar = new MenuBar();
private Menu mFile = new Menu("File");
private Menu mHelp = new Menu("Help");
private MenuItem miClose = new MenuItem("close");
private MenuItem miAbout = new MenuItem("about");
public ChatWin() {
super("Chat");
panel.setPreferredSize(new Dimension(60, 10));
this.add(panel, BorderLayout.EAST);
this.add(in, BorderLayout.SOUTH);
this.add(out, BorderLayout.CENTER);
panel.add(bSend);
bSend.setActionCommand("send");
panel.add(bClose);
bClose.setActionCommand("close");
panel.setBackground(Color.LIGHT_GRAY);
bar.add(mFile);
bar.add(mHelp);
mFile.add(miClose);
miClose.setActionCommand("close");
mHelp.add(miAbout);
miAbout.setActionCommand("about");
this.setMenuBar(bar);
this.init();
this.setSize(600, 450);
this.setVisible(true);
}
private void init() {
WindowHandler wHandler = new WindowHandler(this);
this.addWindowListener(wHandler);
ActionHandler aHandler = new ActionHandler(this);
bClose.addActionListener(aHandler);
bSend.addActionListener(aHandler);
miClose.addActionListener(aHandler);
miAbout.addActionListener(aHandler);
in.addActionListener(aHandler);
}
public void close() {
this.dispose();
}
public void about() {
JOptionPane.showMessageDialog(this,"Chat v1.0");
}
public void send() {
String sText = in.getText();
out.append("\n" + sText);
in.setText("");
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ChatWin win = new ChatWin();
}
}
class WindowHandler extends WindowAdapter {
private ChatWin win;
public WindowHandler(ChatWin win) {
this.win = win;
}
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
win.close();
}
}
class ActionHandler implements ActionListener {
private ChatWin win;
public ActionHandler(ChatWin win) {
this.win = win;
}
public void actionPerformed(ActionEvent e) {
String action = e.getActionCommand();
if (action.equals("close")) {
win.close();
} else if (action.equals("about")) {
win.about();
} else if (action.equals("send")) {
win.send();
} else {
win.send();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -