📄 chatpanel.java
字号:
/*
* ChatPanel.java
*
* Copyright (C) 2000 Jason M. Hanley
* Released under the GNU General Public License (GPL)
* See license.txt for additional information.
*
* Created on August 18, 2000, 2:37 AM
*/
package fate.client;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;
import fate.messages.*;
import fate.network.*;
import fate.ui.*;
import fate.util.*;
/**
* UI for client sending and receiving "chat" messages
*
* @author preylude@s3m.com
* @version 0.1.0
*/
public class ChatPanel extends JPanel implements ActionListener {
ConsoleFrame parent;
JTextField editChatTo, editChatMsg;
JTextArea paneChatFrom;
/** Creates new ChatPanel */
public ChatPanel( ConsoleFrame parent ) {
this.parent = parent;
// The chat panel
Box boxChat = new Box( BoxLayout.Y_AXIS );
JPanel panel = new JPanel();
panel.setOpaque( false );
paneChatFrom = new JTextArea( 4, 40 );
paneChatFrom.setLineWrap( true );
paneChatFrom.setEditable( false );
JScrollPane scrollPane = new JScrollPane( paneChatFrom );
panel.add( scrollPane );
boxChat.add( panel );
panel = new JPanel();
panel.setOpaque( false );
editChatTo = SwingUtil.addTextField( panel, "Chat To", 10 );
editChatMsg = SwingUtil.addTextField( panel, "Message", 32 );
SwingUtil.addButton( panel, "Send...", 's', "SendMessage", this );
boxChat.add( panel );
add( boxChat );
}
public void actionPerformed( ActionEvent e ) {
String strAction = e.getActionCommand();
Debug.trace( "client.MainFrame: ActionCommand: " + strAction );
if ( strAction.equals( "SendMessage" ) ) {
ChatMessage msg = new ChatMessage( "", editChatTo.getText(),
editChatMsg.getText() );
parent.connection.sendMessage( msg );
}
}
/** Incoming chat message handler */
public void onReceiveChatMessage( ChatMessage msg ) {
paneChatFrom.append( msg.from + ": \"" + msg.message + "\"\n" );
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -