版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、package love;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Random;import javax.swing.*;public class Games extends JFrame implements ActionListener private JButton buttons;/ 存儲按鍵的數(shù)組private Container container;/ 一個容器private GridLayout layout;
2、/ 布局方式為 GridLayoutprivate int count =0,is=new int8;/count 的作用是計算按鍵移動的次數(shù),is 儲存一個隨機產(chǎn)生的1 到 8 數(shù)字數(shù)組public Games() super("拼圖游戲");/設置標題layout = new GridLayout(3, 3);/ 3 行 3 列container = getContentPane();/該容器的布局方式,及其重要,否則產(chǎn)生空 引用異常container.setLayout(layout);/ 將該布局方式作用于容器buttons = new JButton33;/ 給按
3、鍵數(shù)組分配儲存空間int locate1,locate2;/locate1 用來指示當前產(chǎn)生的元素locate2 用來指示locate1 之前的元素for (locate1 = 0; locate1 < 8; locate1+) /該方法作用是產(chǎn)生1 到 8 這 8 個數(shù),隨機分配給數(shù)組,即無序排列int g = new Random().nextInt(8) + 1;/隨機產(chǎn)生一個空白按鍵,即不顯示的那個islocate1 = g;for (locate2 = locate1 - 1; 0 <= locate2; locate2-) if (islocate1 = islocat
4、e2)break;if (locate2 != -1)locate1-;int temp = 0;int r = new Random().nextInt(3);/ 隨機產(chǎn)生一個0到 3 的數(shù),代表空白按鍵的行int l = newRandom().nextInt(3);/隨機產(chǎn)生一個0到 3 的數(shù),代表空白按鍵的列for (int i = 0; i < 3; i+) for (int j = 0; j < 3; j+) if (r = i && l = j) / 空白按鍵設置為9 ,不顯示buttonsij = new JButton("9")
5、;container.add(buttonsij);buttonsij.setVisible(false); else buttonsij = new JButton("" + istemp+);/ 將數(shù)組的值作為顯示的 8 個按鍵 的名字container.add(buttonsij);buttonsij.addActionListener(this);/ 注冊監(jiān)聽事 件setSize(300, 300);/設置顯示容器區(qū)域大小setVisible(true);public void actionPerformed(ActionEvent event) / 事件處理, 由
6、于計算量小該處將所有按鍵單獨分析JButton b = (JButton) event.getSource();if (b = buttons00) if (buttons01.getText().equals("9") buttons01.setText("" + buttons00.getText();buttons01.setVisible(true);buttons00.setText("9");buttons00.setVisible(false);count+; else if (buttons10.getText().e
7、quals("9") buttons10.setText("" + buttons00.getText();buttons10.setVisible(true);buttons00.setText("9");buttons00.setVisible(false);count+;else if (b = buttons01) if (buttons00.getText().equals("9") buttons00.setText("" + buttons01.getText();buttons0
8、0.setVisible(true);buttons01.setText("9");buttons01.setVisible(false);count+; else if (buttons02.getText().equals("9") buttons02.setText("" + buttons01.getText();buttons02.setVisible(true);buttons01.setText("9");buttons01.setVisible(false);count+; else if (but
9、tons11.getText().equals("9") buttons11.setText("" + buttons01.getText();buttons11.setVisible(true);buttons01.setText("9");buttons01.setVisible(false);count+; else if (b = buttons02) if (buttons01.getText().equals("9") buttons01.setText("" + buttons02
10、.getText();buttons01.setVisible(true);buttons02.setText("9");buttons02.setVisible(false);count+; else if (buttons12.getText().equals("9") buttons12.setText("" + buttons02.getText();buttons12.setVisible(true);buttons02.setText("9");buttons02.setVisible(false);c
11、ount+; else if (b = buttons10) if (buttons00.getText().equals("9") buttons00.setText("" + buttons10.getText();buttons00.setVisible(true);buttons10.setText("9");buttons10.setVisible(false);count+; else if (buttons11.getText().equals("9") buttons11.setText("
12、;" + buttons10.getText();buttons11.setVisible(true);buttons10.setText("9");buttons10.setVisible(false);count+; else if (buttons20.getText().equals("9") buttons20.setText("" + buttons10.getText();buttons20.setVisible(true);buttons10.setText("9");buttons10.
13、setVisible(false);count+; else if (b = buttons11) if (buttons01.getText().equals("9") buttons01.setText("" + buttons11.getText();buttons01.setVisible(true);buttons11.setText("9");buttons11.setVisible(false);count+; else if (buttons10.getText().equals("9") butt
14、ons10.setText("" + buttons11.getText();buttons10.setVisible(true);buttons11.setText("9");buttons11.setVisible(false);count+; else if (buttons12.getText().equals("9") buttons12.setText("" + buttons11.getText();buttons12.setVisible(true);buttons11.setText("
15、9");buttons11.setVisible(false);count+; else if (buttons21.getText().equals("9") buttons21.setText("" + buttons11.getText();buttons21.setVisible(true);buttons11.setText("9");buttons11.setVisible(false);count+; else if (b = buttons12) if (buttons02.getText().equals(
16、"9") buttons02.setText("" + buttons12.getText();buttons02.setVisible(true);buttons12.setText("9");buttons12.setVisible(false);count+; else if (buttons22.getText().equals("9") buttons22.setText("" + buttons12.getText();buttons22.setVisible(true);butto
17、ns12.setText("9");buttons12.setVisible(false);count+; else if (buttons11.getText().equals("9") buttons11.setText("" + buttons12.getText();buttons11.setVisible(true);buttons12.setText("9");buttons12.setVisible(false);count+; else if (b = buttons20) if (buttons1
18、0.getText().equals("9") buttons10.setText("" + buttons20.getText();buttons10.setVisible(true);buttons20.setText("9");buttons20.setVisible(false);count+; else if (buttons21.getText().equals("9") buttons21.setText("" + buttons20.getText();buttons21.set
19、Visible(true);buttons20.setText("9");buttons20.setVisible(false);count+;else if (b = buttons21) if (buttons20.getText().equals("9") buttons20.setText("" + buttons21.getText();buttons20.setVisible(true);buttons21.setText("9");buttons21.setVisible(false);count+;
20、7/ 10 else if (buttons22.getText().equals("9") buttons22.setText("" + buttons21.getText();buttons22.setVisible(true);buttons21.setText("9");buttons21.setVisible(false);count+; else if (buttons11.getText().equals("9") buttons11.setText("" + buttons21.
21、getText();buttons11.setVisible(true);buttons21.setText("9");buttons21.setVisible(false);count+; else if (b = buttons22) if (buttons21.getText().equals("9") buttons21.setText("" + buttons22.getText();buttons21.setVisible(true);buttons22.setText("9");buttons22.setVisible(false);count+; else if (buttons12.getText().equals("9") buttons12.setText("" + buttons22.getText();buttons12.setVisibl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 吊車費合同模板
- 電力施工安裝合同模板
- 固定攤位 招租合同模板
- 打包貨車出售合同模板
- 車輛維修付款合同模板
- 數(shù)控設備保養(yǎng)合同模板
- 超市員工績效合同模板
- 圍墻出租合同模板
- 分期還款協(xié)議合同模板
- 房產(chǎn)買賣合同模板
- 《讓我自己來整理》優(yōu)教課件
- 技術技能型人才培養(yǎng)經(jīng)驗交流
- 腹腔鏡膀胱癌根治術查房護理課件
- 中職學生職業(yè)核心素養(yǎng)評價及其標準體系建構研究
- 多重耐藥菌感染的預防課件
- 京東逆向物流方案分析報告
- 母嬰阻斷培訓課件
- 民國服飾完整版本
- 浙江省溫州市2023-2024學年八年級上學期歷史與社會期末測試(含答案)
- 建筑材料常用價格
- 中國銀行預付款保函格式
評論
0/150
提交評論