주어진 코드 조각은 무작위로 생성된 장식품으로 크리스마스 트리를 만드는 Java 프로그램의 구현입니다. 하지만 프로그램에서는 나무 경계 밖으로 이동하는 장식품이 경계 내에서 제대로 재배치되지 않는 문제가 있습니다. 이 문제를 해결하려면 Star 클래스의 move() 메서드를 수정하여 컨테이너 경계에 도달했는지 확인하고 그에 따라 방향을 반대로 해야 합니다.
수정된 move() 메서드는 다음과 같습니다.
public void move() { if (location.x < 0 || location.x > frame.getContentPane().getWidth() - 20) { xIncr = -xIncr; } if (location.y < 0 || location.y > frame.getContentPane().getHeight() - 20) { yIncr = -yIncr; } translate(xIncr, yIncr); location.setLocation(location.x + xIncr, location.y + yIncr); }
이 수정된 버전에서는 move() 메서드가 컨테이너(frame.getContentPane())의 왼쪽, 오른쪽, 위쪽 및 아래쪽 경계에 도달했는지 확인합니다. if 조건. 이러한 경계 중 하나라도 도달하면 해당 xIncr 또는 yIncr이 반전되어 장식품의 방향이 바뀌고 경계 내에서 다시 이동하게 됩니다.
위 내용은 Java 크리스마스 트리 경계 내에서 애니메이션 장식품을 유지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!