1. Tuyển Mod quản lý diễn đàn. Các thành viên xem chi tiết tại đây

Bác nào giỏi lập trình Java giúp em cái bài tập này với

Chủ đề trong 'Hỏi đáp Tin học' bởi _scorpions_, 13/01/2007.

  1. 0 người đang xem box này (Thành viên: 0, Khách: 0)
  1. _scorpions_

    _scorpions_ Thành viên mới

    Tham gia ngày:
    08/07/2004
    Bài viết:
    728
    Đã được thích:
    0
    Bác nào giỏi lập trình Java giúp em cái bài tập này với

    Bài tập này đối với em khó quá nghĩ mãi không ra Em mới bắt đầu học Java thôi mà. Yêu cầu như sau: tạo 1 game như hình vẽ
    [​IMG]

    Luật chơi: bấm vào những ô nào nằm cạnh ô trắng (không chéo) thì 2 ô đó sẽ đổi chỗ. Chỉ đơn giản thế thôi ạ. Em gặp 2 vấn đề: khi bấm vào 1 ô bất kỳ, làm sao để biết nó có nằm cạnh ô trắng hay không và, nếu nằm cạnh, làm sao để đổi chỗ. Chỉ dùng awt bình thường thôi ạ, các bác giúp em với, không làm được nó khó chịu ghê. Em cảm ơn các bác
  2. tonganhquan

    tonganhquan Thành viên mới

    Tham gia ngày:
    31/01/2006
    Bài viết:
    1.126
    Đã được thích:
    0
    em mới chỉ đọc qua java thôi,
    bác thử sang javavietnam.org hỏi sẽ Ok
    đại loại: mỗi cái buttton đấy sẽ có label, và value
    Cách kiểm tra để biết 1 ô có nằm cạnh ô trống ko thì bác dùng mảng:
    ban đầu bác biết tọa độ của ô trống, giả sử A[i,j]
    khi bác click vào 1 ô, bác xác định đuợc tọa độ của ô đó A[m, n]
    nếu m= i cộng, trừ 1, hoặc n = j cộng trừ 1 là Ok
    Còn cách đổi chỗ: thì bác chỉ thay 2 cái label của 2 cái button đấy thôi
    Được tonganhquan sửa chữa / chuyển vào 11:48 ngày 13/01/2007
  3. _scorpions_

    _scorpions_ Thành viên mới

    Tham gia ngày:
    08/07/2004
    Bài viết:
    728
    Đã được thích:
    0
    Cám ơn bác đã trả lời em ý tưởng dùng mảng 2 chiều của bác hay quá, em cũng đã từng nghĩ đến, nhưng ... cụ thể làm thế nào để quản lý các nút, và nhãn của nó, qua mảng 2 chiều nhỉ? Với lại, sau mỗi lần đổi chỗ, lại phải add lại giao diện từ đầu ạ? Bác giảng kỹ hơn một chút cho em đi
  4. _scorpions_

    _scorpions_ Thành viên mới

    Tham gia ngày:
    08/07/2004
    Bài viết:
    728
    Đã được thích:
    0
    Em đã dùng 1 cái label[4][4] đánh số từ 15 về 0, 1 button[4][4] gán tương ứng từng label vào rồi ạ. Như vậy là xong phần ... giao diện. Còn lại thì ... tịt
  5. _scorpions_

    _scorpions_ Thành viên mới

    Tham gia ngày:
    08/07/2004
    Bài viết:
    728
    Đã được thích:
    0
    Các bác giúp em đi. Hic trình độ còi nó khổ vậy đấy

Chia sẻ trang này