1、可以参考Oracle官方swing教程
https://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html
2、主要简单设计效果图:
MyFrame:
总体设计方法:
1、创建底部根面板
2、在面板上添加一个文本框和一个按钮进行测试
3、按钮上设计一个匿名监听器,用于实现方法test
test设计方法:.
JOptionPane用于弹出窗格
test注意事项:
test1:this表示弹出的对话框在当前对象root
test2:select等于0代表第一个按钮键
test3/test可以参考官方教程进行设计
package my;
//dialogs对话框/会话
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class MyFrame extends JFrame
{
public MyFrame(String title)
{
super(title);
// Content Pane
JPanel root = new JPanel();
this.setContentPane(root);
root.setLayout(new FlowLayout());
JTextField textField = new JTextField(20);
JButton button = new JButton("测试");
root.add(textField);
root.add(button);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e)
{
test4();
}
});
}
// 简单消息提示框
private void test1()
{
JOptionPane.showMessageDialog(this, "操作已经完成!");
System.out.println("test1 exit");
}
// 简单确认输入框
private void test2()
{
int select = JOptionPane.showConfirmDialog(this, "是否确认删除?", "确认", JOptionPane.YES_NO_OPTION);
// select 为用户点的第几个按钮
if(select == 0)
{
System.out.println("模拟执行数据删除操作...");
System.out.println("删除完成");
}
System.out.println("test2 exit");
}
// 简单数据输入框
private void test3()
{
String input = JOptionPane.showInputDialog(
this,
"请输入你的身份证号\n (字母以X代替)",
"0000");
if(input != null)
{
System.out.println("输入的号码为: " + input);
}
System.out.println("test3 exit");
}
// 简单选项对话框
private void test4()
{
Object[] colors = {"红色", "绿色", "蓝色"};
String select = (String)JOptionPane.showInputDialog(
this,
"你最喜欢的颜色",
"请选择",
JOptionPane.PLAIN_MESSAGE,
null,
colors,
"红色");
if(select != null)
{
System.out.println("选择了: " + select);
}
System.out.println("test4 exit");
}
}
MyDemo:
package swing01;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class MyDemo
{
private static void createGUI()
{
// JFrame指一个窗口,构造方法的参数为窗口标题
JFrame frame = new MyFrame("Swing Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 设置窗口的其他参数,如窗口大小
frame.setSize(400, 300);
// 显示窗口
frame.setVisible(true);
}
public static void main(String[] args)
{
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run()
{
createGUI();
}
});
}
}