Java Swing应用程序消息对话框帮助

我正在研究Java Swing应用程序。 我需要创建一个如图所示的对话框。 我不知道这个名字; 我无法解释,所以我附上了一张照片。 请告诉我这是什么以及如何在我的GUI应用程序中创建它。

图像是这样的

皮肤猫的方法不止一种


public final class JDialogDemo { private static BufferedImage bi; public static void main(String[] args){ try { loadImage(); SwingUtilities.invokeLater(new Runnable(){ @Override public void run() { createAndShowGUI(); } }); } catch (IOException e) { e.printStackTrace(); } } private static void loadImage() throws IOException{ bi = ImageIO.read(JDialogDemo.class.getResource("../resource/close-icon.png")); } private static void createAndShowGUI(){ final JDialog dialog = new JDialog(); dialog.setUndecorated(true); final JPanel panel = new JPanel(){ @Override public Dimension getPreferredSize(){ return new Dimension(400, 40); } }; panel.setBorder(BorderFactory.createLineBorder(Color.GRAY)); panel.setBackground(new Color(238, 221, 130)); panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS)); final JLabel closeLabel = new JLabel(); closeLabel.setIcon(new ImageIcon(bi)); closeLabel.addMouseListener(new MouseAdapter(){ @Override public void mouseClicked(MouseEvent e){ dialog.dispose(); } }); panel.add(new JLabel("There are deleted items that used to be in this folder.")); panel.add(Box.createHorizontalGlue()); panel.add(closeLabel); dialog.add(panel); dialog.pack(); dialog.setLocationRelativeTo(null); dialog.setVisible(true); } } 

在此处输入图像描述


这只是一个示范。 无论如何,请随意定制。

另一个方便的图标来源是UIManager 。 在这种情况下, JInternalFrame外观和感觉closeIcon有一些吸引力,但其他也可用。

修改@ Moonbeam的答案会产生以下结果。

 private static final Icon icon = UIManager.getIcon("InternalFrame.closeIcon"); ... private static void createAndShowGUI() { ... closeLabel.setIcon(icon); ... } 

JDialogDemo