91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5KB
    文件類型: .java
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-08
  • 語言: Java
  • 標簽: java??

資源簡介

使用java程序編寫的拼圖程序 二、課程設計內容 1、設計題目:編寫拼圖游戲程序 2、拼圖游戲具用功能: 所謂拼圖游戲,是指將一個完整的圖片分割成若干個規則的小圖片,然后將這些小圖片隨機地拼在一起,然后由玩家按照原圖重新拼接出正確的圖片。 三、設計思路 通過單擊與空白網格相鄰的網格,可以將該網格顯示的圖片移動到空白網格中,那么可以用一個按鈕代表一個網格,然后讓每個按鈕顯示一個小圖片,最后將這些按鈕添加到一個面板中,并讓這個面板采用網格布局。 需要解決的問題: (1)如何實現圖片移動 (2)如何判斷被單擊的網格與空白的網格是否相鄰 (3)如何實現圖片的隨機擺放

資源截圖

代碼片段和文件信息

import?java.awt.BorderLayout;?
import?java.awt.Button;?
import?java.awt.Choice;?
import?java.awt.Color;?
import?java.awt.Container;?
import?java.awt.event.ActionEvent;?
import?java.awt.event.ActionListener;?

import?javax.swing.Icon;?
import?javax.swing.ImageIcon;?
import?javax.swing.Jframe;?
import?javax.swing.JLabel;?
import?javax.swing.JOptionPane;?
import?javax.swing.JPanel;?
//以上均引用不同的package內的類

public?class?MyMainframe?extends?Jframe?implements?ActionListener?{//MyMainframe類extends?“Jframe”類實現?ActionListener的方法
MyCanvas?myCanvas;?//初始化對象MyCanvas類
JPanel?panelNorthpanelPreview;//定義上方的面板,及預覽所需的面板?
Button?startpreviewset;//定義開始,預覽,設定按鈕?
Container?container;//容器,得到內容面板?

public?MyMainframe()?{//初使化?
container=this.getContentPane();?//得到當前對象的ContentPane,并且把它賦給container
start=new?Button(“開始“);//創建并初始新的Button(按鈕)對象,賦給start?
start.addActionListener(this);?//在這個按鈕對象中添加監聽器,范圍是當前對象
preview=new?Button(“預覽“);//同上,創建新的Button對象。。。。。?
preview.addActionListener(this);//同上。。。。。?
set?=?new?Button(“設置“);?//同上。。。。。(感覺代碼都差不多吧?呵呵)
set.addActionListener(this);//同上?
panelPreview=new?JPanel();?創建新的JPanel(面板)對象
panelPreview.setLayout(null);?//設置面板對象的布局為空
Icon?icon=new?ImageIcon(“pic/pic_“+MyCanvas.pictureID+“.jpg“);?//創建并初始新的圖標對象。圖標的圖片路徑是pic目錄下的pic與通過MyCanvas.pictureId取得字符串再與.jpg合并后的名稱。例如(pic/pic_1234.jsp)
JLabel?label=new?JLabel(icon);?//定義新的JLable(java標簽),并初始
label.setBounds(00300300);?//設置標簽的范圍(長x軸寬y軸,長多,寬多少)
panelPreview.add(label);?//面板對象中添加label這個對象


panelNorth=new?JPanel();?//定義新的JPanel
panelNorth.setBackground(Color.red);?//設置JPanel的背景色
panelNorth.add(start);?//Jpanel加入按鈕
panelNorth.add(preview);?//同上
panelNorth.add(set);?//同上
myCanvas=new?MyCanvas();?//實例化MyCanvas
container.add(myCanvasBorderLayout.CENTER);//在容器(前邊定義好了這個對象)中添加myCanvas,設置它的布局為居中?
container.add(panelNorthBorderLayout.NORTH);//添加Jpanel,布局為北(也就是上)?
this.settitle(“拼圖小游戲-“);?//設置這個對象的題目叫。。。。。
this.setLocation(300200);?//

評論

共有 條評論