Java でポップウィンドウを作成する
Java を使用すると、AWT、Swing、JavaFX などのライブラリを使用していくつかのタイプの GUI コンポーネントを作成できます。このチュートリアルでは、ダイアログを見て、その作成方法を学びます。次の例では、JOptionPane と JDialog の 2つのクラスを使用します。
Java で JOptionPane を使用してポップアップウィンドウを作成する
Java ポップアップウィンドウまたはダイアログを作成する最も簡単な方法は、javax.swing パッケージの一部として JOptionPane クラスを使用することです。これには、多くの便利なメソッドが付属しています。一般的な手法のいくつかを以下に示します。
| 方法 | 説明 |
|---|---|
| showMessageDialog() | 指定されたフレーム内にメッセージを表示します |
| showInputDialog() | ポップアップウィンドウでユーザーからの入力を取得します |
| showConfirmDialog() | メッセージを表示し、はい、いいえ、キャンセルなどの確認をユーザーに求めます |
以下は、メソッドの例です。
例 1:Jframe オブジェクトを作成して JFrame 内にメッセージを表示し、JOptionPane.showMessageDialog() メソッドを呼び出し、最初の jFrame オブジェクトを最初の引数として渡します。2 番目の引数は、ダイアログに表示するメッセージです。
import javax.swing.*;
public class PopUpJava {
public static void main(String[] args) {
JFrame jFrame = new JFrame();
JOptionPane.showMessageDialog(jFrame, "Hello there! How are you today?");
}
}
出力:

例 2:この例では、JOptionPane.showInputDialog() 関数を使用して、入力を取得するための入力フィールドを含むメッセージを表示します。ここでは、入力を保存するために、String 変数を使用し、showMessageDialog() を使用してユーザーに表示します。
import javax.swing.*;
public class PopUpJava {
public static void main(String[] args) {
JFrame jFrame = new JFrame();
String getMessage = JOptionPane.showInputDialog(jFrame, "Enter your message");
JOptionPane.showMessageDialog(jFrame, "Your message: " + getMessage);
}
}
出力:


例 3:JOptionPane.showConfirmDialog() 関数を使用して、[はい]、[いいえ]、[キャンセル]の 3つのボタンがあるダイアログを表示します。他のメソッドと同様に、jFrame オブジェクトと表示するメッセージを渡します。showConfirmDialog() メソッドは、クリックされたボタンを指定する int を返します。0 ははい、1 はいいえを意味し、その他の整数はキャンセルボタンがクリックされたことを指定します。
import javax.swing.*;
public class PopUpJava {
public static void main(String[] args) {
JFrame jFrame = new JFrame();
int result = JOptionPane.showConfirmDialog(jFrame, "Press any button to close the dialog.");
if (result == 0)
System.out.println("You pressed Yes");
else if (result == 1)
System.out.println("You pressed NO");
else
System.out.println("You pressed Cancel");
}
}
出力:

Java で JDialog を使用してポップアップウィンドウを作成する
2 番目のメソッドでは、Jdialog クラスを使用します。フレームを作成するには、JDialog と jd のオブジェクトを作成するときに引数として JDialog() のコンストラクターに渡される jFrame オブジェクトが必要です。次に、ダイアログ内にコンポーネントを配置する方法を指定するダイアログのレイアウトを設定する必要があります。jd.setLayout() を使用して、コンポーネントを 1 行に配置する FlowLayout() 関数を設定します。
ポップウィンドウの位置とサイズを設定するには、setBounds() 関数を使用します。最初の 2つの引数は x と y の位置で、最後の 2つの引数は幅と高さです。
テキストを表示するためにコンストラクター内に渡されるテキストメッセージを使用して jLabel 変数を作成します。ユーザーがダイアログを閉じることができるようにするために、Close というテキストで JButton オブジェクトを作成します。ここで、閉じるボタンがクリックされたときに実行するアクションを設定する必要があります。これを行うには、実行するアクションを指定する actionPerformed() メソッドをオーバーライドする addActionListener() 関数を呼び出します。
最後に、jd.add() を使用して作成したすべてのコンポーネントまたはオブジェクトを追加します。
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class PopUpJava {
public static void main(String[] args) {
JFrame jFrame = new JFrame();
JDialog jd = new JDialog(jFrame);
jd.setLayout(new FlowLayout());
jd.setBounds(500, 300, 400, 300);
JLabel jLabel = new JLabel("Press close button to close the dialog.");
JButton jButton = new JButton("Close");
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
jd.setVisible(false);
}
});
jd.add(jLabel);
jd.add(jButton);
jd.setVisible(true);
}
}
出力:

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn関連記事 - Java GUI
- Java での警告ポップアップ
- Java のボタングループ
- JProgressBar クラスを使用して Java プログレスバーを作成する
- Java の pack()メソッド
- JTextField から値を取得する
- Java でドロップダウンメニューを作成する
