2011-05-12 5 views
2

하나의 글로벌 JFrame에서 여러 JPanels로 게임을 만들고 싶습니다. 이러한 JPanels를 전환하고 싶지만 페이드 인 (fade in) 및 페이드 아웃 (fade out)과 같은 멋진 애니메이션을 사용하고 싶습니다. JPanel을 사라지게하고, JPanel을 새로운 것으로 바꾸고, 새로운 것을 페이드 인 (가능하다면 외부 라이브러리없이) 할 수 있습니까?JFrame을 JFrame으로 페이드 인 및 페이드 아웃

덕분에 많은

답변

4

어쩌면 http://filthyrichclients.org/
몇 가지 좋은 아이디어와 예를 가지고 전체 응용 프로그램을 않습니다 (온라인) 시작합니다. 그것은 많은 스윙 애니메이션 세부 사항을 포함합니다.

2

아마도 그들을 페이드 아웃하기 위해 패널과 구성 요소에 대한 같은 것을 할 수 없습니다 :

 

Color bgColor = getBackground(); 

for(int alpha = bgColor.getAlpha(); alpha > = 0; alpha--) 
{ 
    setBackground(new Color(
    bgColor.getRed(), 
    bgColor.getGreen(), 
    bgColor.getBlue(), 
    alpha)); 
} 
 

당신은 아마 거기에 Thread.sleep를()를 던져해야합니다.

가 또 한 번 봐 가지고 :

com.sun.awt.AWTUtilities.setWindowOpacity(this,opacity); 

을하지만이

+1

나는 JPanel의 BufferedImage를 생성 한 다음 이미지를 표시하고 페이드 아웃하여이를 수행 할 수 있다고 상상해보십시오. –

+0

아, 그래, 좋은 생각이야! – user489041

1

참고로, FlashTest은 색상의 채도를 변경하여 색이 바래는 것을 보여줍니다. AlphaTest은 색상의 알파를 변경하여 색을 바래는 방법을 보여줍니다.

관련 문제