注释很详细,直接上代码
新增内容
1.自定义对话框前列图标
2.消息对话框的若干种形式
java
package swing21_30;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
public class swing_test_30 {
// 定义一个JFrame
JFrame jFrame = new JFrame("测试消息对话框");
// 定义一个JTextArea
JTextArea jTextArea = new JTextArea(6, 30);
// 定义一个JButton
JButton jButton = new JButton(new AbstractAction("弹出消息对话框") {
// 重写actionPerformed方法
@Override
public void actionPerformed(ActionEvent e) {
//将JTextArea中的内容显示在消息对话框中
//此处内容皆有默认格式,可自行探索
//JOptionPane.showMessageDialog(jFrame, jTextArea.getText(), "消息对话框", JOptionPane.ERROR_MESSAGE);//错误对话框
//JOptionPane.showMessageDialog(jFrame, jTextArea.getText(), "消息对话框", JOptionPane.INFORMATION_MESSAGE);//信息对话框
//JOptionPane.showMessageDialog(jFrame, jTextArea.getText(), "消息对话框", JOptionPane.WARNING_MESSAGE);//警告对话框
//JOptionPane.showMessageDialog(jFrame, jTextArea.getText(), "消息对话框", JOptionPane.QUESTION_MESSAGE);//问题对话框
//JOptionPane.showMessageDialog(jFrame, jTextArea.getText(), "消息对话框", JOptionPane.PLAIN_MESSAGE);//普通对话框
//添加自定义图标:有默认图标则修改,无则添加
JOptionPane.showMessageDialog(jFrame, jTextArea.getText(), "消息对话框", JOptionPane.ERROR_MESSAGE, new ImageIcon("img/female.png"));
}
});
public void init(){
// 将JTextArea添加到JFrame中
jFrame.add(jTextArea);
// 将JButton添加到JFrame中
jFrame.add(jButton, BorderLayout.SOUTH);
// 设置JFrame的默认关闭操作
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 自动设置JFrame的大小
jFrame.pack();
// 显示JFrame
jFrame.setVisible(true);
}
public static void main(String[] args) {
// 实例化swing_test_30
new swing_test_30().init();
}
}
效果演示:
![](https://file.jishuzhan.net/article/1741137160729268226/9e3f77bf9b3b63595fef3a375a390bf8.webp)