간단한 게임을 통해 Java 학습에 대한 계속적인 학습을 통해 약간의 문제가 발생했습니다. 내 게임 보드는 JPanel과 보드의 각 부분을 확장합니다. 자,이 몇 가지 문제를 제시 : 각 조각의JFrame 내부의 JPanels 객체 이동 및 크기 조정
캔트 세트의 크기는, 그러므로, 각 조각 JPanel의은 조각의 나머지 부분과 배경 (게임 판을) 은폐, 전체 JFrame의 ocupy.
캔트의 위치를 설정합니다.
기본 흐름 관리자가 있습니다. 시도 setbounds와 행운을 빕니다.
아마 내가 다른 JComponent를 확장해야할까요? 추가 된 이미지 : 그 조각입니다, 이제 회색 영역도 조각입니다! 그것을 확인하기 위해 mousePressed 수신기를 만들고 그것에 물건을 할당했습니다. 회색 영역 아래에는 또 다른 JPanel 인 게임 보드가 있습니다 (또는 적어도 있어야합니다!). 단위가 아닌 더 큰하고 채우는지도 주위 alt text http://img442.imageshack.us/img442/5813/screenshot2ml.png
팩 :
alt text http://img42.imageshack.us/img42/2227/screenshotvdy.png
일부 코드는 : 내가 팩() 메서드를 적용 할 때
package TheProject;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GameWindow extends JFrame {
public GameWindow() {
setSize(800, 600);
setLocationRelativeTo(null);
Map map = new Map(800, 600, 2);
add(map);
MilitaryUnit imperialRussia = new MilitaryUnit(30, Color.BLACK, Color.YELLOW, Color.WHITE);
imperialRussia.setPreferredSize(new Dimension(30, 30));
add(imperialRussia);
}
}
발생합니다 JFrame.
누구나? –
JLayeredPane을 사용하여 모든 것을 넣었습니다 (맵과 유닛). JLP는 레이아웃 관리자를 지원하지 않기 때문에 직접 찾아야했지만 근무했습니다. –
"LayoutManager는 레이어 설정에 관계없이이 컨테이너의 모든 하위 구성 요소에 영향을 미칩니다."-http : //java.sun.com/javase/6/docs/api/javax/swing/JLayeredPane.html – trashgod