"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Swing 애플리케이션에서 애니메이션 GIF를 배경으로 표시하는 방법은 무엇입니까?

Swing 애플리케이션에서 애니메이션 GIF를 배경으로 표시하는 방법은 무엇입니까?

2024년 11월 23일에 게시됨
검색:949

How to Display Animated GIFs as Backgrounds in Swing Applications?

애니메이션 GIF를 사용하여 Swing에서 애니메이션 배경을 표시하는 방법

애니메이션 GIF는 Swing 애플리케이션에서 쉽게 표시할 수 있지만 이미지를 배경으로 사용하려면 다른 접근 방식이 필요합니다. 배경에 애니메이션 이미지를 로드하려면 ImageIcon을 활용하여 이미지를 얻는 것이 이상적입니다.

ImageIcon은 정적 이미지를 전달하는 다른 방법과 달리 애니메이션 이미지를 제공합니다. 다음 코드는 애니메이션 GIF를 사용하여 50개의 버튼이 있는 패널의 배경에 애니메이션을 적용하는 방법을 보여줍니다.

import java.awt.*;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.net.URL;

class ImagePanel extends JPanel {

    private Image image;

    ImagePanel(Image image) {
        this.image = image;
    }

    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.drawImage(image,0,0,getWidth(),getHeight(),this);
    }

    public static void main(String[] args) throws Exception {
        URL url = new URL("https://i.sstatic.net/iQFxo.gif");
        final Image image = new ImageIcon(url).getImage();
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                JFrame f = new JFrame("Image");
                f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                f.setLocationByPlatform(true);

                ImagePanel imagePanel = new ImagePanel(image);
                imagePanel.setLayout(new GridLayout(5,10,10,10));
                imagePanel.setBorder(new EmptyBorder(20,20,20,20));
                for (int ii=1; ii

이 코드는 애니메이션 이미지를 늘려 패널 크기를 채우는 ImagePanel을 생성합니다. 그런 다음 패널에 50개의 버튼을 추가하여 대화형 버튼이 있는 애니메이션 배경을 만듭니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3