2015-09-21 3 views
0

как заголовок говорит, что я хочу получить сообщение с опцией, используя JOptionPane, чтобы вопрос и кнопки были помещены в одну строку. Я читаю следующие учебники, но это, кажется, довольно сложно:JOptionPane: текстовое сообщение и кнопки в той же строке

В некотором смысле идея иметь после утверждения макета сообщения:


Продукты будут удалены из базы данных.

Вы уверены, что хотите его обработать? | ДА | | НЕТ |


где ДА и НЕТ должны быть кнопками. (Текст не является реальным, это только для того, чтобы дать аромат сообщения).

Любые комментарии или подсказки будут приветствоваться.

Большое спасибо.

+3

Вы не сможете сделать это с 'JOptionPane', не без большого труда. Вам нужно будет сделать свой собственный диалог – MadProgrammer

ответ

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; 
    } 
+0

Привет, в первую очередь спасибо за ответ. В самом деле, это полезно, только две проблемы состоят в том, что помимо пользовательского okbtn в сообщении также отображаются кнопки по умолчанию, а с другой стороны, возвращаемое значение showConfirmDialog по-прежнему основано на кнопках по умолчанию, установленных JOptionPane. – pafede2

+0

Использование JOptionPane.showOptionDialog (null, getCustomPanel(), "Hello", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, null, new Object [] {}, null); удаляет из сообщения кнопки по умолчанию. Ref .: http://stackoverflow.com/questions/14126975/joptionpane-without-button – pafede2

Смежные вопросы