java jdialog 怎么用
展开全部
JDialog 对话框 , 一般用于满足比较复杂的弹出对话框, 比如 很多的输入框, 很多的按钮等情况
JOptionPane 也是对话框, 但是它一般只用于简单的提示, 输入, 选择, 警告 , 不能进行复杂的自定义.
下面写1个简单的使用JDialog来提示的对话框
import javax.swing.*;
import java.awt.event.*;
public class DialogFrame extends JFrame implements ActionListener {
JPanel jp1;
JTextField jtf;
JButton jb1;
public DialogFrame() {
jp1 = new JPanel();
JLabel jl1 = new JLabel("请输入用户名");
jtf = new JTextField(8);
jb1 = new JButton("确定");
jb1.addActionListener(this);
jp1.add(jl1);
jp1.add(jtf);
jp1.add(jb1);
add(jp1);
// 窗口属性设置
setTitle("JFrame");// 标题
setSize(380, 180);// 窗口大小
setLocationRelativeTo(null);// 窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序
}
public static void main(String[] args) {
new DialogFrame().setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (jb1 == e.getSource()) {
String name = jtf.getText().trim();
if (name.equals("")) {// 验证是否输入了有效的字符串
// 字符串为"", 那么弹出对话框进行提示
new TPDialog(this, "提示", true, "Sorry! 用户名必须填写,不能为空!");
// 第一个参数 this 代表了本JFrame对象
// 第二个参数 标题
// 第三个参数 true表示模态窗口, 该窗口置顶,并且如果不关闭,无法点击其他的组件
// 第四个参数 表示了对话框要弹出的信息内容是什么
}
}
}
}
class TPDialog extends JDialog {
public TPDialog(JFrame jf, String title, boolean flag, String info) {
super(jf, title, flag); //调用父类的构造器
// 第一个参数 this 代表了本JFrame对象
// 第二个参数 标题
// 第三个参数 true表示模态窗口, 该窗口置顶,并且如果不关闭,无法点击其他的组件
JLabel jl = new JLabel(info);
add(jl);
setSize(230, 100);//大小
setLocationRelativeTo(null);//居中
setVisible(true);
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);//点击关闭时,销毁对话框
}
}
效果显示
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询