如何在 Java 中让 JOptionPane 处理"是"、"否"和"关闭"按钮?

java 8object oriented programmingprogramming

为此,请创建 JOptionPane.QUESTION_MESSAGE,并在用户操作时显示单独的消息,例如 −

int res = JOptionPane.showOptionDialog(new JFrame(), "Do you like Cricket?", "Hobbies",
JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null,
new Object[] { "Yes", "No" }, JOptionPane.YES_OPTION);
if (res == JOptionPane.YES_OPTION) {
   System.out.println("Selected Yes!");
}

上面,我们在用户选择"是"按钮时在控制台上显示一条消息。下面是一个示例,演示如何让 JOptionPane 处理"是"、"否"和"关闭"按钮 −

示例

package my;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class SwingDemo {
   public static void main(String args[]) {
      int res = JOptionPane.showOptionDialog(new JFrame(), "Do you like Cricket?","Hobbies",
         JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null,
         new Object[] { "Yes", "No" }, JOptionPane.YES_OPTION);
      if (res == JOptionPane.YES_OPTION) {
         System.out.println("Selected Yes!");
      } else if (res == JOptionPane.NO_OPTION) {
         System.out.println("Selected No!");
      } else if (res == JOptionPane.CLOSED_OPTION) {
         System.out.println("Window closed without selecting!");
      }
   }
}

输出

假设您在上面选择了"是"。在这种情况下,控制台中将显示以下内容:−

假设您在上面选择了"否"。在这种情况下,控制台中将显示以下内容 −

假设您按下了上面的"取消"(关闭)。在这种情况下,控制台中将显示以下内容 −


相关文章