Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaのJFrameとJDialogの違いは何ですか?


JFrame

  • フレームに追加されたコンポーネントはそのコンテンツと呼ばれ、 contentPaneによって管理されます。 。 JFrameにコンポーネントを追加するには 、 contentPaneを使用する必要があります 代わりに。
  • JFrame タイトルのウィンドウが含まれています 、境界線 、(オプション)メニュー バー およびユーザー -指定 コンポーネント
  • JFrame 移動できます 、サイズ変更アイコン化 JComponentのサブクラスではありません 。
  • デフォルトでは、JFrameは左上の角に表示されます 画面のr。指定した場所にフレームを表示するには、 setLocation(x、y)を使用できます。 JFrameクラスのメソッド。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JFrameDemo {
   public static void main(String s[]) {
      JFrame frame = new JFrame("JFrame Demo");
      frame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent e) {
            System.exit(0);
         }
      });
      JLabel lbl = new JLabel("JFrame Demo");
      lbl.setPreferredSize(new Dimension(175, 100));
      frame.getContentPane().add(lbl, BorderLayout.CENTER);
      frame.setSize(375, 275);
      frame.setVisible(true);
   }
}
出力

JavaのJFrameとJDialogの違いは何ですか?

JDialog

  • JDialog JFrameと非常によく似ています ただし、JDialogはモーダルで設定できます。 。 モーダル 対応するJDialogが表示されている間は、他のウィンドウを使用またはアクティブ化できないことを意味します。
  • モーダル ダイアログ 他のトップレベルウィンドウへの入力をブロックし、モードレス ダイアログ 他のウィンドウへの入力を許可します。
  • JFrameとは異なります 、JDialogは、ウィンドウの右上隅にある最小化ボタンと最大化ボタンを保持していません。
import javax.swing.JDialog;
import javax.swing.JLabel;
public class JDialogDemo extends JDialog {
   public static void main(String[] args) {
      try {
         JDialogDemo dialog = new JDialogDemo();
         dialog.setVisible(true);
      } catch (Exception e) {
         e.printStackTrace();
      }
   }  
   public JDialogDemo() {
      setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
      setTitle("Welcome to Tutorials Point");
      setBounds(100, 100, 359, 174);
      getContentPane().setLayout(null);
      JLabel label = new JLabel("Welcome to Tutorials Point");
      label.setBounds(86, 37, 175, 29);
      getContentPane().add(label);
   }
}
出力

JavaのJFrameとJDialogの違いは何ですか?


  1. JavaのJTextFieldとJTextAreaの違いは何ですか?

    JTextFieldの主な違い およびJTextArea Javaでは、 JTextField 1行のテキストを入力できます JTextAreaのGUIアプリケーションで 複数行のテキストを入力できます GUIアプリケーションで。 JTextField JTextFeld は、ユーザーが単一行形式でテキスト値を入力できるようにする最も重要なコンポーネントの1つです。 JTextField ActionListenerを生成します 内部に入力を入力しようとしたときのインターフェース。 JTextComponent JTextFieldのスーパークラスです これは

  2. JavaのGridLayoutとGridBagLayoutの違いは何ですか?

    GridLayout すべてのコンポーネントを長方形のグリッドに配置し、同じサイズの長方形に分割します 各コンポーネントは長方形の中に配置されますが、 GridBagLayout 柔軟です レイアウト マネージャー コンポーネントを垂直方向と水平方向に整列させます コンポーネントが同じサイズである必要はありません。各GridBagLayout オブジェクトは、動的な長方形のセルのグリッドを維持します 各コンポーネントがコンポーネントと呼ばれる1つ以上のセルを占有します 表示 エリア 。 GridLayout GridLayout コンポーネントを長方形のグリッドに配置します。セル