📄 mainframe.java
字号:
import java.io.File;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import net.*;
public class MainFrame extends JFrame{
/* {
try {
javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");
} catch(Exception e) {
e.printStackTrace();
}
}*/
ImageIcon noIcon = new ImageIcon("Image" + File.separator + "no.gif");
Image frameIconImage = getToolkit().getImage("Image" + File.separator + "frame.gif");
ImageIcon saveIcon = new ImageIcon("Image" + File.separator + "save.gif");
ImageIcon loadIcon = new ImageIcon("Image" + File.separator + "load.gif");
ImageIcon connectIcon = new ImageIcon("Image" + File.separator + "connect.gif");
ImageIcon disconnectIcon = new ImageIcon("Image" + File.separator + "disconnect.gif");
ImageIcon connectChatIcon = new ImageIcon("Image" + File.separator + "connectChat.gif");
JPanel contentPane = new JPanel();
JPanel gameArea = new JPanel();
JPanel chatArea = new JPanel();
TotalPanel mainPane = new TotalPanel();
JToolBar mainToolBar = new JToolBar();
JButton saveButton = new JButton(saveIcon);
JButton loadButton = new JButton(loadIcon);
JToolBar.Separator toolBarSeparator = new JToolBar.Separator();
JButton connectButton = new JButton(connectIcon);
JButton disconnectButton = new JButton(disconnectIcon);
JButton connectChatButton = new JButton(connectChatIcon);
JMenuBar mainMenuBar = new JMenuBar();
JMenu systemMenu = new JMenu("系统");
JMenuItem saveGameMI = new JMenuItem("保存游戏...", saveIcon);
JMenuItem loadGameMI = new JMenuItem("加载游戏...", loadIcon);
JSeparator separator = new JSeparator();
JMenuItem exitGameMI = new JMenuItem("退出游戏", noIcon);
JMenu netMenu = new JMenu("网络");
JMenuItem connectMI = new JMenuItem("连接游戏玩家", connectIcon);
JMenuItem disconnectMI = new JMenuItem("断开连接", disconnectIcon);
JMenuItem connectChatMI = new JMenuItem("添加聊天", connectChatIcon);
JMenuItem localIpMI = new JMenuItem("查看本机IP");
JSeparator separator2 = new JSeparator();
JMenuItem playerColorChangeMI = new JMenuItem("交换先后手", noIcon);
JMenu helpMenu = new JMenu("帮助");
JMenuItem helpMI = new JMenuItem("帮助...");
JMenuItem aboutMI = new JMenuItem("关于我们");
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
public MainFrame(String title){
super(title);
this.getContentPane().setBackground(Color.LIGHT_GRAY);
toolBarSet();
menuSet();
panelSet();
setContentPane(contentPane);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
this.setSize(500, 760);
this.setIconImage(frameIconImage);
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void toolBarSet(){
contentPane.setLayout(new BorderLayout());
saveButton.setToolTipText("保存游戏");
saveButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
save();
}
});
loadButton.setToolTipText("加载游戏");
loadButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
new ReadChessManualFrame();
}
});
connectButton.setToolTipText("连接玩家");
connectButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
connect();
}
});
disconnectButton.setToolTipText("添加聊天");
disconnectButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
}
});
connectChatButton.setToolTipText("断开连接");
connectChatButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
connectChat();
}
});
mainToolBar.add(saveButton);
mainToolBar.add(loadButton);
mainToolBar.add(toolBarSeparator);
mainToolBar.add(connectButton);
mainToolBar.add(disconnectButton);
mainToolBar.add(connectChatButton);
contentPane.add(mainToolBar, BorderLayout.NORTH);
}
public void menuSet(){
saveGameMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
save();
}
});
systemMenu.add(saveGameMI);
loadGameMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
load();
}
});
systemMenu.add(loadGameMI);
systemMenu.add(separator);
exitGameMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
System.exit(0);
}
});
systemMenu.add(exitGameMI);
mainMenuBar.add(systemMenu);
connectMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
connect();
}
});
netMenu.add(connectMI);
disconnectMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
disconnect();
}
});
netMenu.add(disconnectMI);
connectChatMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
connectChat();
}
});
netMenu.add(connectChatMI);
netMenu.add(localIpMI);
localIpMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
JOptionPane.showMessageDialog(null,"本地IP : "+Net.getMyAdress());
}
});
netMenu.add(separator2);
netMenu.add(playerColorChangeMI);
mainMenuBar.add(netMenu);
helpMenu.add(helpMI);
aboutMI.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
JOptionPane.showMessageDialog(null, "计算机0412班:\n" +
" 全体同学", "关于我们", JOptionPane.INFORMATION_MESSAGE);
}
});
helpMenu.add(aboutMI);
mainMenuBar.add(helpMenu);
this.setJMenuBar(mainMenuBar);
}
public void panelSet(){
contentPane.add(mainPane,BorderLayout.CENTER);
}
///////////////////////////////////////////////////////////////////////
//the method below is message handler(s).
public void save(){
JOptionPane.showMessageDialog(null, "save");
}
public void load(){
JOptionPane.showMessageDialog(null, "load");
}
public void connect(){
String ipStr=JOptionPane.showInputDialog(null,"请输入要连接的IP:","222.20.7.61");
mainPane.net.connectServer(ipStr);
}
public void connectChat(){
JOptionPane.showMessageDialog(null, "connectChat");
}
public void disconnect(){
JOptionPane.showMessageDialog(null, "disconnect");
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -