ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

【Java-GUI】09 Swing03 对话框

2021-02-13 11:33:37  阅读:238  来源: 互联网

标签:jFrame 对话框 GUI 09 JOptionPane public import new jTextArea


消息弹出框案例:

package cn.dzz.swing;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;

public class Demo06 {

    JFrame jFrame = new JFrame("消息弹出框案例");
    JTextArea jTextArea = new JTextArea(6, 30);
    JButton jButton = new JButton(new AbstractAction("弹出消息框") {
        @Override
        public void actionPerformed(ActionEvent e) {
            // 弹出一个对话框,显示文本域中输入的内容
            String text = jTextArea.getText();
            JOptionPane.showMessageDialog(
                    jFrame,
                    text,
                    "消息提示",
                    JOptionPane.INFORMATION_MESSAGE
            );
        }
    });


    public void init(){
        jFrame.add(jTextArea, BorderLayout.CENTER);
        jFrame.add(jButton, BorderLayout.SOUTH);

        jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jFrame.pack();
        jFrame.setVisible(true);
    }

    public static void main(String[] args) {
        new Demo06().init();
    }
}

 

几种消息提示框的选择,不同的消息对应配有不同的图标提示

JOptionPane.INFORMATION_MESSAGE
// JOptionPane.ERROR_MESSAGE
// JOptionPane.WARNING_MESSAGE
// JOptionPane.QUESTION_MESSAGE
// JOptionPane.PLAIN_MESSAGE, 可以再加上 new ImageIcon(String path) 显示图像

确认对话框案例:

package cn.dzz.swing;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;

public class Demo06 {

    JFrame jFrame = new JFrame("消息弹出框案例");
    JTextArea jTextArea = new JTextArea(6, 30);
    JButton jButton = new JButton(new AbstractAction("弹出确认框") {
        @Override
        public void actionPerformed(ActionEvent e) {
            String text = jTextArea.getText();
            // JOptionPane.DEFAULT_OPTION
            // JOptionPane.YES_NO_OPTION
            // JOptionPane.YES_NO_CANCEL_OPTION
            int result = JOptionPane.showConfirmDialog(jFrame, text, "确认对话框", JOptionPane.YES_NO_CANCEL_OPTION);
            switch (result) {
                case JOptionPane.YES_OPTION: //  case JOptionPane.OK_OPTION:
                    jTextArea.append("\n用户选择了YES 和确认的结果一样");
                    break;
                case JOptionPane.NO_OPTION:
                    jTextArea.append("\n用户选择了NO");
                    break;
                case JOptionPane.CANCEL_OPTION:
                    jTextArea.append("\n用户选择了 取消");
                    break;
            }
        }
    });

    public void init(){
        jFrame.add(jTextArea, BorderLayout.CENTER);
        jFrame.add(jButton, BorderLayout.SOUTH);

        jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jFrame.pack();
        jFrame.setVisible(true);
    }

    public static void main(String[] args) {
        new Demo06().init();
    }
}

文本输入框案例:

package cn.dzz.swing;

import jdk.nashorn.internal.scripts.JO;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;

public class Demo06 {

    JFrame jFrame = new JFrame("消息弹出框案例");
    JTextArea jTextArea = new JTextArea(6, 30);
    JButton jButton = new JButton(new AbstractAction("弹出输入框") {
        @Override
        public void actionPerformed(ActionEvent e) {
            String text = jTextArea.getText();
            String input = JOptionPane.showInputDialog(
                    jFrame,
                    "请填写你的输入信息",
                    "输入对话框",
                    JOptionPane.INFORMATION_MESSAGE
            );
            jTextArea.append(input + "\n");
        }
    });

    public void init(){
        jFrame.add(jTextArea, BorderLayout.CENTER);
        jFrame.add(jButton, BorderLayout.SOUTH);

        jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jFrame.pack();
        jFrame.setVisible(true);
    }

    public static void main(String[] args) {
        new Demo06().init();
    }
}

选择对话框案例:

package cn.dzz.swing;

import jdk.nashorn.internal.scripts.JO;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;

public class Demo06 {

    JFrame jFrame = new JFrame("消息弹出框案例");
    JTextArea jTextArea = new JTextArea(6, 30);
    JButton jButton = new JButton(new AbstractAction("弹出输入框") {
        @Override
        public void actionPerformed(ActionEvent e) {
            String text = jTextArea.getText();

            String[] strings = {
                    "选项1",
                    "选项2",
                    "选项3",
            };

            int result = JOptionPane.showOptionDialog(
                    jFrame,
                    "选择提示信息",
                    "选项对话框",
                    JOptionPane.DEFAULT_OPTION,
                    JOptionPane.INFORMATION_MESSAGE,
                    null,
                    strings,
                    "初始选项"
            );

            jTextArea.append(strings[result] + "\n");
        }
    });

    public void init(){
        jFrame.add(jTextArea, BorderLayout.CENTER);
        jFrame.add(jButton, BorderLayout.SOUTH);

        jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jFrame.pack();
        jFrame.setVisible(true);
    }

    public static void main(String[] args) {
        new Demo06().init();
    }
}

 

标签:jFrame,对话框,GUI,09,JOptionPane,public,import,new,jTextArea
来源: https://www.cnblogs.com/mindzone/p/14399889.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有