1
8x8 격자를 구성해야하는 이미지가 있으므로 보드의 배경입니다.JLabel 배경 이미지 ... 이상한 행동?
저는 ImageIcon과 JLabel을 사용하여이 작업을 수행 할 수 있다고 말했지만 실제로 작동하지 않습니다.
- 구성 요소를 추가 할 수 없습니다 (조각, 또한 JLabel 임).
- 또한 프로그램이 실행 중일 때 사각형을 클릭하면 사라집니다. 이는 배경이되어야하므로 적합하지 않습니다. 여기
코드입니다 :
for (int i = 0; i < 8; i++)
{
for (int j = 0; j < 8; j++)
{
square=new JLabel();
square.setIcon(icon);
chessBoard.add(square);
}
}
전체 코드 : http://pastebin.com/YdavUmGz
내가이 배경 이미지 끔찍하게 잘못 뭔가를하고 있습니까?
도움을 주시면 감사하겠습니다. 미리 감사드립니다.
어떻게 이미지를로드? 이미지가 나타나지 않습니까? 하나의 IconImage를 하나의 JLabel로만 설정할 수 있기 때문에 64 (8 X 8) 이미지가 필요하면 64 JLabels가 필요합니다. 그리드 (8 X 8) 한 개의 큰 이미지 만 있으면 더 간단합니다. 그냥 생각. – John
이미지가 정확히 어떻게 나타나는지 정확하게 나타납니다. 그러나 사각형을 드래그 할 수 있기 때문에 이미지가 움직이는 것처럼 느낍니다. 그러나 조각의 배경이되어야합니다. – user1902535
나는'JLayeredPane'을 제거 할 것이다. 시간 동안 'GridLayout'을 사용하기 만하면됩니다. 'JLabel'에 다른 컴포넌트를 추가 할 수 있습니다. 그리드 라벨의 레이아웃을'BorderLayout'과 같이 설정해야합니다. 그런 다음 클릭하면 'JLabel'조각을 추가 할 수 있습니다. – MadProgrammer