1. Trang chủ
  2. » Công Nghệ Thông Tin

Làm Game Xếp hình Java

4 714 5

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 134 KB

Nội dung

Để thực hiện các thao tác thông qua chuột, chúng ta sử dụng lớp MouseEvent +Lớp MouseEvent bao gồm các phương thức cơ bản thường dùng sau: . int getX(): trả về tọa độ X của con trỏ chuột, tại vị trí hiện hành. . int getY(): trả về tọa độ Y của con trỏ chuột, tại vị trí hiện hành. . int getButton(): cho biết phím chuột nào được bấm: MouseEvent.Button1, MouseEvent.Button2, MouseEvent.Button3. . int getClickCount(): cho biết số lần bấm phím chuột. +Tìm hiểu về giao diện về MouseListener, chúng ta phải định nghĩa lại các phương thức của giao diện tương ứng với các sự kiện chuột:

Trang 1

BÁO CÁO ĐỀ TÀI MÔN: Lập trình hướng đối tượng Tên đề tài: “GAME JAVA”

Tìm hiểu về lý thuyết: “Xử lý sự kiện trên chuột”.

Để thực hiện các thao tác thông qua chuột, chúng ta sử dụng lớp MouseEvent

+Lớp MouseEvent bao gồm các phương thức cơ bản thường dùng sau:

int getX(): trả về tọa độ X của con trỏ chuột, tại vị trí hiện hành

int getY(): trả về tọa độ Y của con trỏ chuột, tại vị trí hiện hành

int getButton(): cho biết phím chuột nào được bấm:

MouseEvent.Button1, MouseEvent.Button2, MouseEvent.Button3

int getClickCount(): cho biết số lần bấm phím chuột

+Tìm hiểu về giao diện về MouseListener, chúng ta phải định nghĩa lại các

phương thức của giao diện tương ứng với các sự kiện chuột:

• public void mouseClicked(MouseEvent e):

Đã nhấn phím chuột( nhấn và thả)

• public void mousePressed(MouseEvent e):

Có phím chuột được bấm

• public void mouseReleased(MouseEvent e):

Thả phím chuột

• public void mouseEntered(MouseEvent e):

Có con trỏ đi vào phạm vi của một thành phần

• public void mouseExited(MouseEvent e):

Con trỏ đi ra khỏi một thành phần

Tìm hiểu sự kiện trên menu

Chúng ta dùng sự kiện Action

Để sự dụng được các sự kiện trên menu chúng sử dụng phương thức

public void actionPerformed(ActionEvent e)

Ví dụ:

public void actionPerformed(ActionEvent e){

If(e.getActionCommand().equals(“Exit”)){

System.exit(0);

}

}

Trang 2

Trong ví dụ trên thì khi click vào menu Exit trên thanh thực đơn thì chương trình của ta sẽ thoát

Lưu ý: Cần phải đăng ký sự kiện ActionListener cho Item Exit của thanh menu

Tổng quan sơ lược về chương trình “Game JAVA chọn hình”:

*Giao diện chính được phát thảo sơ lược của game:

*Các bước để phát thảo giao diện như trên:

Trang 3

Game được tổ chức bằng một ma trận hai chiều Ma trận này là ma trận các JButton bao gồm 8 dòng và 8 cột

Mỗi JButton sẽ được setImageIcon() mặc định lúc chương trình khởi động( như hình vẽ)

Để thể hiện ma trận JButton này trên giao chính ta thực hiện các bước cơ bản sau:

+ Khởi tạo một JPanel

+ setLayout(new GridLayout(8,8,2,2)) cho JPanel này, tham số truyền vào đối tượng GridLayout() - thể hiện kiểu lưới, gồm 8 dòng và 8 cột, khoảng cách giữa các dòng và các cột là 2

+ Sau đó duyệt qua lần lượt từng phần tử của ma trận đã nói trên, lần lượt đưa từng phần tử của ma trận và JPanel

+ Cuối cùng đưa J Panel vào giao diện chính

Ý tưởng chính và cách chơi:

Người chơi dùng chuột Click vào từng hình ảnh trên giao diện chính, mỗi lần

Click chuột vào hình: thì hình này sẽ chuyển sang hình khác với

hình mặc định, giả sử ta có một hình mới sau khi click vào :

Như vậy sau khi người chơi chọn được 2 hình ảnh sau khi click 2 lần chuột, khi

đó chương trình game sẽ kiểm tra xem 2 hình này có giống nhau hay không, nếu giống nhau thì 2 hình này sẽ tự động biến mất, ngược lại thì 2 hình này sẽ tự

động trở về trạng thái mặc định ban đầu

Và cứ như vậy, chương trình này sẽ kết thúc nếu người chơi tìm hết được tấc cả các cặp giống nhau

Lưu ý:

Khi chơi xong người chơi muốn chơi tiếp thì phải click vào menu “New” để tạo mới

Nói sơ qua ý tưởng của việc tạo mới:

Việc tạo mới chúng ta sẽ sử dụng đến hàm Math.Random()

Trang 4

Hàm này sẽ trả về một số thực lớn hơn 0 và nhỏ hơn 1

Ở đây, chúng ta có tấc cả là 64 hình ảnh

Giả sử ta lưu 64 hình ảnh này bằng cách lưu vào mảng 1 chiều có 64 phần tử, mỗi phần tử sẽ lưu một đường dẫn của 1 ảnh

Mặc khác chúng ta có một mảng các số nguyên, mỗi phần tử sẽ lưu một số, số nguyên này sẽ chỉ vị trí của ảnh cần lấy trong mảng 64 hình ảnh

Cụ thể:

String path[]={“h1.png”,”h2.png”,”h3.png”,”h4.png”}; // mảng có 4 ảnh int vt[]= { 3 , 4 , 1 , 2 }; // mảng các số nguyên

Khi đó: để lấy đường dẫn ảnh ra String s=path [ vt [ 0 ] ];

Kết quả trả về là đường dẫn ảnh “h3.png”, ta sẽ có 1 ảnh từ đường dẫn này để setImage() cho JButton khi người chơi Click vào

Sau mỗi lần Click vào menu “New” ta sẽ xáo trộn lại mảng số nguyên trên Giả sử ta thu được mảng số nguyên khác là: int vt[]= { 2 , 4 , 3 , 1 }; Lúc này String s=path [ vt [ 0 ] ]; sẽ không là ảnh cũ nữa mà là ảnh “h2.png” Việc xáo trộn mảng số nguyên ta sẽ dùng đến hàm Math.Random();

Lợi ích của việc chơi game này:

Chơi game này sẽ giúp bạn luyện trí nhớ, tăng khả năng nhớ của bạn, làm cho

nó linh hoạt hơn

Giúp người chơi giải trí nhẹ sau khi học bài căng thẳng

Tuy nhiên, người chơi cũng không nên chơi quá nhiều, bởi vì chơi game nhiều

sẽ ảnh hưởng đến sức khỏe

Ngày đăng: 23/10/2014, 09:16

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w