Asg*_*har 3 java user-interface 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);
}
}
Run Code Online (Sandbox Code Playgroud)

这只是一个示范.无论如何,请随意定制.
另一个方便的图标来源是UIManager.在这种情况下,JInternalFrameLook&Feel closeIcon有一些吸引力,但其他也可用.
修改@ Moonbeam的答案会产生以下结果.
private static final Icon icon = UIManager.getIcon("InternalFrame.closeIcon");
...
private static void createAndShowGUI() {
...
closeLabel.setIcon(icon);
...
}
Run Code Online (Sandbox Code Playgroud)

| 归档时间: |
|
| 查看次数: |
730 次 |
| 最近记录: |