JOptionPane每行有多个按钮?

KJW*_*KJW 5 java swing jbutton joptionpane

我如何在每一行显示JOptionPane.showinputDialog()多个JButtons?我不是在谈论Yes,No,Cancel按钮,但多个自定义标记JButtons,它显示的内容区域JOptionPane.showinputDialog

所以我需要从按钮中获取按钮的值JOptionPane.

mKo*_*bel 6

您可以将任何JComponentsJOptionPane的,在那里我看不到任何的限制,JOptionPane是同一顶层容器JFrame,JDialog或者JWindow,但与普通的对比度Top-Level Containers,JOptionPane从已实现的返回事件内置的funcionalities Integer值,这意味着按钮YES,NO,OK,CANCEL而且CLOSE,

将所有JButton放入数组

String[] buttons = { "Yes", "Yes to all", "No", "Cancel".... };    
int returnValue = JOptionPane.showOptionDialog(null, "Narrative", "Narrative",
        JOptionPane.WARNING_MESSAGE, 0, null, buttons, buttons[i]);
System.out.println(returnValue);
Run Code Online (Sandbox Code Playgroud)


小智 5

只要我能得到,这就是您想要的水。

Object[] colours = {"Blue", "Red", "Black", "White"};

int n = JOptionPane.showOptionDialog(null,
    "Which colour do you like?",
    "Choose a colour",
    JOptionPane.DEFAULT_OPTION,
    JOptionPane.QUESTION_MESSAGE,
    null,
    colours,
    colours[0]);

System.out.println("The users likes " + colours[n]);
Run Code Online (Sandbox Code Playgroud)