【问题标题】:JOptionPane: texts message and buttons in the same lineJOptionPane:文本消息和按钮在同一行
【发布时间】:2015-12-17 19:07:26
【问题描述】:

正如标题所说,我想要实现的是使用 JOptionPane 弹出一个选项消息,以便将问题和按钮放在同一行。我正在阅读以下教程,但似乎很难:

在某种意义上,这个想法是有以下确认消息布局:


产品将从数据库中删除。

您确定要执行吗? |是| |没有|


YES 和 NO 应该是按钮。 (文字不是真实的,只是为了给人一种信息的味道)。

欢迎任何 cmets 或提示。

非常感谢。

【问题讨论】:

  • 您将无法使用JOptionPane 来做到这一点,而不需要大量的工作。您必须制作自己的对话框

标签: java swing awt joptionpane


【解决方案1】:

试试这个

   JOptionPane.showConfirmDialog(null,
                        getCustomPanel(), // this will return a Panel design on your Own
                        "JOptionPane Example : ",
                        JOptionPane.OK_CANCEL_OPTION,
                        JOptionPane.PLAIN_MESSAGE);
//and your Custom Panel
 private JPanel getCustomPanel() {
        JPanel panel = new JPanel();
        JLabel label = new JLabel("Text Message:");
        panel.setLayout(null);
        JButton okbtn=new JButton("ok");
        label.setBounds(10,20,200,40); //x,y,width,height
        okbtn.setBounds(220,20,80,40); //x,y,width,height
        panel.add(label);
        panel.add(okbtn);
        return panel;
    }

【讨论】:

  • 您好,首先感谢您的回答。确实很有用,唯一的两个问题是除了自定义 okbtn 消息还绘制默认按钮,另一方面 showConfirmDialog 返回值仍然基于 JOptionPane 设置的默认按钮。
  • 使用 JOptionPane.showOptionDialog(null, getCustomPanel(), "Hello", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, null, new Object[] {}, null);从消息中删除默认按钮。参考:stackoverflow.com/questions/14126975/joptionpane-without-button
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-05
  • 1970-01-01
  • 1970-01-01
  • 2013-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多