8

JOptionPane.showMessageDialogメッセージを出させたい

  • 画面内の任意の場所。
  • JFrameを基準にしています。(JFrameの中央ではありません)

たとえば、これは引数として提供されたJFrameの中央にメッセージを表示しますthisFrame

 JOptionPane.showMessageDialog(thisFrame, "Your message.");

また、これにより、JFrameとは関係のないメッセージが画面の中央に表示されます。

JOptionPane.showMessageDialog(null, "Your message.");
  • 私が欲しいのは、メッセージの場所を好きな場所に設定することです

  • 私が欲しいのは、JFrameを基準にしたメッセージの場所を設定することです(JFrameの中央ではありません)

どのように?

4

3 に答える 3

9

必要なのは

    final JOptionPane pane = new JOptionPane("Hello");
    final JDialog d = pane.createDialog((JFrame)null, "Title");
    d.setLocation(10,10);
    d.setVisible(true);
于 2012-12-07T09:36:59.130 に答える
6
import javax.swing.JDialog;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JButton;

public class CustomDialog extends JDialog {
    private JPanel myPanel = null;
    private JButton yesButton = null;
    private JButton noButton = null;

    public CustomDialog(JFrame frame, boolean modal, String myMessage) {
    super(frame, modal);
    myPanel = new JPanel();
    getContentPane().add(myPanel);
    myPanel.add(new JLabel(myMessage));
    yesButton = new JButton("Yes");
    myPanel.add(yesButton);
    noButton = new JButton("No");
    myPanel.add(noButton);
    pack();
    //setLocationRelativeTo(frame);
    setLocation(200, 200); // <--
    setVisible(true);
    }
}
于 2012-12-07T09:36:36.920 に答える
0

これを試して

JOptionPane pane = new JOptionPane(arguments);
pane.setBounds(x, y,width, height);   
pane.setVisible(true);
于 2012-12-07T09:28:55.710 に答える