?? rule.java
字號:
package ball;
import java.awt.*;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* <p>Title: 類說明</p>
*
* <p>Description: 游戲規(guī)則面板</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author goodboy
* @version 2.1
*/
//五子棋規(guī)則顯示面板
public class Rule extends JFrame {
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
JScrollPane jScrollPane1 = new JScrollPane();
JEditorPane jEditorPane1 = new JEditorPane();
JButton jButton1 = new JButton();
JPanel jPanel2 = new JPanel();
JLabel jLabel1 = new JLabel();
public Rule() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
JOptionPane.showMessageDialog(null, exception.toString(), "游戲規(guī)則面板初始化產(chǎn)生異常", JOptionPane.ERROR_MESSAGE);
}
}
private void jbInit() throws Exception {
getContentPane().setLayout(borderLayout1);
jButton1.setText("確定");
jButton1.addActionListener(new Rule_jButton1_actionAdapter(this));
this.setTitle("五子棋規(guī)則");
this.setResizable(false);
this.setSize(new Dimension(400,300));
//窗體放在中央
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = this.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
this.setLocation((screenSize.width - frameSize.width) / 2,
(screenSize.height - frameSize.height) / 2);
this.getContentPane().add(jPanel1, java.awt.BorderLayout.SOUTH);
jLabel1.setText("五子棋規(guī)則");
jPanel1.add(jButton1);
this.getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
this.getContentPane().add(jPanel2, java.awt.BorderLayout.NORTH);
jPanel2.add(jLabel1);
jScrollPane1.getViewport().add(jEditorPane1);
jEditorPane1.setContentType("text/html");
jEditorPane1.setText("<html><b>行棋順序:</b><br>"+"<u>黑棋</u>先,<u>白棋</u>后,從<i>天元</i>開始相互順序落子。<br>"
+"<b>判斷勝負(fù):</b><br>"+"1.最先在棋盤<i>橫向</i>,<i>斜向</i>,<i>豎向</i>形成<i>連續(xù)</i>的<i>相同色</i><i>五</i>個棋子的一方為<font color=red>勝</font>。<br>"
+"2.<u>黑棋</u><font color=blue>禁手</font>判<font color=red>負(fù)</font>,<u>白棋</u>無<font color=blue>禁手</font>。<br>"
+"3.<font color=blue>五連</font>與<font color=blue>禁手</font>同時形成,<i>先五</i>為<font color=red>勝</font>。<br>"
+"4.<u>黑方</u><font color=blue>禁手</font>形成時,<u>白方</u>應(yīng)立即指出。若<u>白方</u>未發(fā)現(xiàn)或發(fā)現(xiàn)后未指明而繼續(xù)<i>應(yīng)子</i>,則不能判<u>黑方</u><font color=red>負(fù)</font>。<br>"
+"5.在<i>終局</i>前,無論<u>白方</u>何時發(fā)現(xiàn)<u>黑方</u><font color=blue>長連禁手</font>點,<i>指出</i>此點而宣布勝利,判<u>白方</u><font color=red>勝</font>。<br>"
+"<b>術(shù)語解釋:</b><br>"+"<font color=blue>長連</font>:在棋盤的<i>任意一條線</i>上,形成的<i>5個以上同色棋子不間隔地相連</i>。<br>"
+"<font color=blue>活三</font>:本方再走<i>一步</i>可以形成<font color=blue>活四</font>的三。<br>"
+"<font color=blue>活四</font>:有<i>兩個點</i>可以<i>成五</i>的四。<br>"
+"<font color=blue>沖四</font>:只有<i>一個點</i>可以<i>成五</i>的四。<br>"
+"<font color=blue>禁手</font>:對局中如果<i>使用</i>將被判<font color=red>負(fù)</font>的行棋手段。<br>"
+"<font color=blue>三三禁手</font>:<u>黑棋</u>一子落下<i>同時</i>形成<i>兩個</i>或<i>兩個以上</i>的<font color=blue>活三</font>。<br>"
+"<font color=blue>四四禁手</font>:<u>黑棋</u>一子落下<i>同時</i>形成<i>兩個</i>或<i>兩個以上</i>的<font color=blue>沖四</font>或<font color=blue>活四</font>。<br>"
+"<font color=blue>長連禁手</font>:<u>黑棋</u>一子落下形成<i>一個</i>或<i>一個以上</i>的<font color=blue>長連</font>。");
}
//點擊確定按鈕
public void jButton1_actionPerformed(ActionEvent e) {
jEditorPane1.setText("<html><b>行棋順序:</b><br>"+"<u>黑棋</u>先,<u>白棋</u>后,從<i>天元</i>開始相互順序落子。<br>"
+"<b>判斷勝負(fù):</b><br>"+"1.最先在棋盤<i>橫向</i>,<i>斜向</i>,<i>豎向</i>形成<i>連續(xù)</i>的<i>相同色</i><i>五</i>個棋子的一方為<font color=red>勝</font>。<br>"
+"2.<u>黑棋</u><font color=blue>禁手</font>判<font color=red>負(fù)</font>,<u>白棋</u>無<font color=blue>禁手</font>。<br>"
+"3.<font color=blue>五連</font>與<font color=blue>禁手</font>同時形成,<i>先五</i>為<font color=red>勝</font>。<br>"
+"4.<u>黑方</u><font color=blue>禁手</font>形成時,<u>白方</u>應(yīng)立即指出。若<u>白方</u>未發(fā)現(xiàn)或發(fā)現(xiàn)后未指明而繼續(xù)<i>應(yīng)子</i>,則不能判<u>黑方</u><font color=red>負(fù)</font>。<br>"
+"5.在<i>終局</i>前,無論<u>白方</u>何時發(fā)現(xiàn)<u>黑方</u><font color=blue>長連禁手</font>點,<i>指出</i>此點而宣布勝利,判<u>白方</u><font color=red>勝</font>。<br>"
+"<b>術(shù)語解釋:</b><br>"+"<font color=blue>長連</font>:在棋盤的<i>任意一條線</i>上,形成的<i>5個以上同色棋子不間隔地相連</i>。<br>"
+"<font color=blue>活三</font>:本方再走<i>一步</i>可以形成<font color=blue>活四</font>的三。<br>"
+"<font color=blue>活四</font>:有<i>兩個點</i>可以<i>成五</i>的四。<br>"
+"<font color=blue>沖四</font>:只有<i>一個點</i>可以<i>成五</i>的四。<br>"
+"<font color=blue>禁手</font>:對局中如果<i>使用</i>將被判<font color=red>負(fù)</font>的行棋手段。<br>"
+"<font color=blue>三三禁手</font>:<u>黑棋</u>一子落下<i>同時</i>形成<i>兩個</i>或<i>兩個以上</i>的<font color=blue>活三</font>。<br>"
+"<font color=blue>四四禁手</font>:<u>黑棋</u>一子落下<i>同時</i>形成<i>兩個</i>或<i>兩個以上</i>的<font color=blue>沖四</font>或<font color=blue>活四</font>。<br>"
+"<font color=blue>長連禁手</font>:<u>黑棋</u>一子落下形成<i>一個</i>或<i>一個以上</i>的<font color=blue>長連</font>。");
this.setVisible(false);
}
}
class Rule_jButton1_actionAdapter implements ActionListener {
private Rule adaptee;
Rule_jButton1_actionAdapter(Rule adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -