Java Swing – JOptionPane showMessageDialogの例
これは
JOptionPane`クラスの
showMessageDialog() `メソッドのレビューです。この方法は、起こったことをユーザーに伝える簡単で簡単な方法です。 `showMessageDialog()`は以下のパラメータの組み合わせを使って呼び出すことができます:
Component, Object Component, Object, String, int Component, Object, String, int, Icon
-
コンポーネント – 最初のパラメータは、
ダイアログが表示されるフレーム。 nullの場合、または「parentComponent」にFrameがない場合は、デフォルトのFrameが使用されます。
-
Object – 2番目のパラメータは任意のオブジェクトです. __(一部の年齢
Javaのバージョンでは、プリミティブ型を直接使用するとコンパイラエラーが発生する可能性があります)__。
-
String – 3番目のパラメータは、文字列のタイトルとして配置されます.
メッセージダイアログウィンドウ。
-
int – Stringの後に続くintは `MessageType`です. ザ
JOptionPane`のための異なる
MessageTypes`は次のとおりです:
デフォルトの `MessageType`アイコンを上書きします。
1.コンポーネント
メッセージダイアログを使用する最も簡単な方法。
Component`がnullに設定され、
String`が第2引数として設定された例:
SimpleDialog1.java
package com.techfou.messageDialog;
import javax.swing.JOptionPane;
public class SimpleDialog1 {
public static void main(String[]args){
JOptionPane.showMessageDialog(null, "Simple Information Message");
}
}
出力:

2.コンポーネント、オブジェクト、文字列
メッセージダイアログにいくつかの情報を追加します。
Component`がヌルに設定され、
double`が第2のパラメータとして設定された例:
SimpleDialog2a.java
package com.techfou.messageDialog;
import javax.swing.JOptionPane;
public class SimpleDialog2a {
public static void main(String[]args){
JOptionPane.showMessageDialog(null, 8.9, "This is not an integer.", JOptionPane.PLAIN__MESSAGE);
}
}
出力:

エラーメッセージの例(
Component`がnull、
String Object`に設定されています):
SimpleDialog2b.java
package com.mkyong.messageDialog;
import javax.swing.JOptionPane;
public class SimpleDialog2b {
public static void main(String[]args){
JOptionPane.showMessageDialog(null, "Uh-oh!", "Error", JOptionPane.ERROR__MESSAGE);
}
}
出力:

3.コンポーネント、オブジェクト、文字列、int
あなたのメッセージダイアログを “きれい”にしてください。ディレクトリから取得された `Icon`を使った例:
SimpleDialog3a.java
package messageDialog;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
public class SimpleDialog3a {
public static void main(String[]args){
ImageIcon icon = new ImageIcon("src/images/turtle64.png");
JOptionPane.showMessageDialog(null, "I like turtles.",
"Customized Dialog", JOptionPane.INFORMATION__MESSAGE, icon);
}
}
出力:

Component`が
frame`に設定された例:
MessageDialogInFrame.java
package com.mkyong.messageDialog;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import java.awt.Color;
public class MessageDialogInFrame extends JFrame{
public MessageDialogInFrame() {
getContentPane().setBackground(Color.DARK__GRAY);
setTitle("Message Dialog in Frame");
setDefaultCloseOperation(JFrame.EXIT__ON__CLOSE);
setVisible(true);
setResizable(false);
setSize(400, 300);
getContentPane().setLayout(null);
}
public static void main(String[]args){
ImageIcon icon = new ImageIcon("src/images/turtle64.png");
JOptionPane.showMessageDialog(new MessageDialogInFrame(),
"I appear as part of the frame!!", "Customized Dialog",
JOptionPane.INFORMATION__MESSAGE, icon);
}
}
出力:

4.より高度な例
この例では、Objectパラメータとして
JPanel`を渡しています。 `JPanel`はカスタマイズされ、
JLabel`が追加されています。また、
UIManager`の呼び出しを使って
OptionPane`のサイズを操作しています。
MessageDialogPanel.java
package com.mkyong.messageDialog;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
import javax.swing.UIManager;
public class MessageDialogPanel {
public static void main(String[]args){
ImageIcon icon = new ImageIcon("src/images/turtle64.png");
JPanel panel = new JPanel();
panel.setBackground(new Color(102, 205, 170));
panel.setSize(new Dimension(200, 64));
panel.setLayout(null);
JLabel label = new JLabel("Turtles are awesome!!! :D");
label.setBounds(0, 0, 200, 64);
label.setFont(new Font("Arial", Font.BOLD, 11));
label.setHorizontalAlignment(SwingConstants.CENTER);
panel.add(label);
UIManager.put("OptionPane.minimumSize",new Dimension(300, 120));
JOptionPane.showMessageDialog(null, panel, "Customized Message Dialog", JOptionPane.PLAIN__MESSAGE, icon);
}
}
出力:

参考文献
ダイアログを作る]。
https://docs.oracle.com/javase/8/docs/api/javax/swing/JOptionPane.html
[Class
JOptionペイン – Java 8 API]
dialog
JOptionPane
リンク://タグ/スイング/[スイング]