질문:
배경 이미지를 설정할 때 내 JComponents가 표시되지 않습니다. 이 문제를 해결하려면 어떻게 해야 합니까?
코드:
질문 설명에 제공된 코드를 참조하세요.
답변:
JPanel에 배경 이미지를 추가하려면 다음을 사용할 수 있습니다. 단계:
사용자 정의 JPanel 사용:
class CustomPanel extends JPanel { private BufferedImage image; public CustomPanel(BufferedImage image) { this.image = image; } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(image, 0, 0, this); } }
BufferedImage myPicture = ImageIO.read(new File("c:\bgd.png"));
CustomPanel picPanel = new CustomPanel(myPicture); window.add(picPanel, c);
JLabel:
JLabel picLabel = new JLabel(new ImageIcon(myPicture)); mainp.add(picLabel, c);
추가 고려 사항:
예제 사용자 정의 JPanel 사용:
import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.*; public class BackgroundImageExample { public static void main(String[] args) { try { // Create the main window JFrame window = new JFrame("Window with Background Image"); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.setSize(300, 250); window.setResizable(false); // Create the background image and CustomPanel BufferedImage image = ImageIO.read(new File("path/to/background.png")); CustomPanel picPanel = new CustomPanel(image); picPanel.setOpaque(true); // Add the CustomPanel to the main window window.add(picPanel); // Show the window window.setVisible(true); } catch (IOException e) { e.printStackTrace(); } } }
예 사용하여 JLabel:
import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.*; public class BackgroundImageExample { public static void main(String[] args) { try { // Create the main window JFrame window = new JFrame("Window with Background Image"); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.setSize(300, 250); window.setResizable(false); // Create the background image and JLabel BufferedImage image = ImageIO.read(new File("path/to/background.png")); JLabel picLabel = new JLabel(new ImageIcon(image)); picLabel.setOpaque(true); // Add the JLabel to the main window window.add(picLabel); // Show the window window.setVisible(true); } catch (IOException e) { e.printStackTrace(); } } }
이러한 접근 방식 중 하나를 구현하면 JComponents에 배경 이미지를 성공적으로 추가할 수 있습니다.
위 내용은 JComponents에 배경 이미지를 추가하고 가시성 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!