2016-07-25 4 views
-2

JOptionPane.ShowMessageDialouge(null,"Output");をJAVAで変更しようと考えていました。基本的に私はダイアログ上のOKボタンに沿って印刷ボタンを追加する必要があります。ユーザーがOKをクリックするだけで閉じるか、印刷ボタンをクリックしてから印刷ボタンを押すことになります。JOptionPaneをカスタマイズする

+0

独自のモーダルJDialogを作成し、必要なボタンと機能を完備することをお勧めします。 –

+1

または、JOptionPaneのshowOptionDialogを使用して、APIごとにStringの配列を使用してカスタムボタンのテキストを追加します。 –

+0

いいえ、ボタンを追加したいだけです。印刷すると、アクションイベントにつながる可能性があります。 –

答えて

1

showOptionDialogメソッドを使用してください。 Oracleのマニュアルを参照してください。

「OK」をクリックすると、ダイアログを閉じるソリューションがあります:JOptionPane cancel button。カスタムボタンがあり

Exemple:ヘルプみんなのため

JButton but_print = new JButton("PRINT"); 
    JButton but_ok = new JButton("OK"); 

    but_ok.addActionListener(new ActionListener() { 
     @Override 
     public void actionPerformed(ActionEvent e) { 
      //Close the dialog 
     } 
    }); 

    JOptionPane.showOptionDialog(null, "Test message", "Test", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, new Object[]{but_print,but_ok}, but_ok); 
-1

感謝。私はちょうど良いことを見つけました、そして、私が望むようにそれは正しく働いています。

int response = JOptionPane.showConfirmDialog(null, s+"Print?",cnicstring,JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); 
if (response == JOptionPane.NO_OPTION) { 
    //System.out.println("Pressed NO Button"); 
} else if (response == JOptionPane.YES_OPTION) { 
    // System.out.println("Pressed Yes Button"); 
    txtarea.print(); 
} else if (response == JOptionPane.CLOSED_OPTION) { 
    //System.out.println("JOptionPane closed"); 
} 
関連する問題