Swing-jframe

提供:Dev Guides
移動先:案内検索

SWING-JFrameクラス

前書き

クラス JFrame は、JFC/Swingコンポーネントアーキテクチャのサポートを追加する java.awt.Frame の拡張バージョンです。

クラス宣言

以下は javax.swing.JFrame クラスの宣言です-

public class JFrame
   extends Frame
      implements WindowConstants, Accessible, RootPaneContainer

フィールド

以下は java.awt.Component クラスのフィールドです-

  • protected AccessibleContext AccessibleContext -ユーザー補助コンテキストプロパティ。
  • static int EXIT_ON_CLOSE -アプリケーションを終了するデフォルトのウィンドウを閉じる操作。
  • protected JRootPane rootPane -このフレームのcontentPaneおよびオプションのmenuBarを管理するJRootPaneインスタンス、およびglassPane。
  • protected boolean rootPaneCheckingEnabled -trueの場合、addおよびsetLayoutの呼び出しはcontentPaneに転送されます。

クラスコンストラクター

Sr.No. Constructor & Description
1

JFrame()

最初は見えない新しいフレームを構築します。

2

JFrame(GraphicsConfiguration gc)

画面デバイスの指定されたGraphicsConfigurationおよび空白のタイトルにフレームを作成します。

3

JFrame(String title)

指定されたタイトルで、最初は見えない新しいFrameを作成します。

4

JFrame(String title, GraphicsConfiguration gc)

画面デバイスの指定されたタイトルと指定されたGraphicsConfigurationでJFrameを作成します。

クラスメソッド

Sr.No. Method & Description
1

protected void addImpl(Component comp, Object constraints, int index)

指定された子コンポーネントを追加します。

2

protected JRootPane createRootPane()

コンストラクターメソッドによって呼び出され、デフォルトのrootPaneを作成します。

3

protected void frameInit()

JFrameを適切に初期化するためにコンストラクターによって呼び出されます。

4

AccessibleContext getAccessibleContext()

このJFrameに関連付けられているAccessibleContextを取得します。

5

Container getContentPane()

このフレームのcontentPaneオブジェクトを返します。

6

int getDefaultCloseOperation()

ユーザーがこのフレームで「閉じる」を開始したときに発生する操作を返します。

7

Component getGlassPane()

このフレームのglassPaneオブジェクトを返します。

8

Graphics getGraphics()

このコンポーネントのグラフィックスコンテキストを作成します。

9

JMenuBar getJMenuBar()

このフレームに設定されたメニューバーを返します。

10

JLayeredPane getLayeredPane()

このフレームのlayeredPaneオブジェクトを返します。

11

JRootPane getRootPane()

このフレームのrootPaneオブジェクトを返します。

12

TransferHandler getTransferHandler()

transferHandlerプロパティを取得します。

13

static boolean isDefaultLookAndFeelDecorated()

新しく作成されたJFrameが現在のLook&Feelによって提供されるWindow装飾を持っている場合、trueを返します。

14

protected boolean isRootPaneCheckingEnabled()

addおよびsetLayoutの呼び出しがcontentPaneに転送されるかどうかを返します。

15

protected String paramString()

このJFrameの文字列表現を返します。

16

protected void processWindowEvent(WindowEvent e)

このコンポーネントで発生するウィンドウイベントを処理します。

17

void remove(Component comp)

指定されたコンポーネントをコンテナから削除します。

18

void repaint(long time, int x, int y, int width, int height)

timeミリ秒以内にこのコンポーネントの指定された長方形を再描画します。

19

void setContentPane(Container contentPane)

contentPaneプロパティを設定します。

20

void setDefaultCloseOperation(int operation)

ユーザーがこのフレームで「閉じる」を開始したときにデフォルトで発生する操作を設定します。

21

static void setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)

新しく作成されたJFrameに、現在のLook&Feelによって提供されるウィンドウ装飾(境界線、ウィンドウを閉じるためのウィジェット、タイトルなど)が必要かどうかに関するヒントを提供します。

22

void setGlassPane(Component glassPane)

glassPaneプロパティを設定します。

23

void setIconImage(Image image)

このウィンドウのアイコンとして表示される画像を設定します。

24

void setJMenuBar(JMenuBar menubar)

このフレームのメニューバーを設定します。

25

void setLayeredPane(JLayeredPane layeredPane)

layeredPaneプロパティを設定します。

26

void setLayout(LayoutManager manager)

LayoutManagerを設定します。

27

protected void setRootPane(JRootPane root)

rootPaneプロパティを設定します。

28

protected void setRootPaneCheckingEnabled(boolean enabled)

addおよびsetLayoutの呼び出しをcontentPaneに転送するかどうかを設定します。

29

void setTransferHandler(TransferHandler newHandler)

transferHandlerプロパティを設定します。これは、このコンポーネントへのデータの転送をサポートするメカニズムです。

30

void update(Graphics g)

paint(g)を呼び出すだけです。

継承されるメソッド

このクラスは、次のクラスからメソッドを継承します-

  • java.awt.Frame
  • java.awt.Window
  • java.awt.Container
  • java.awt.Component
  • java.lang.Object

JFrameの例

たとえば、 D:/> SWING> com> finddevguides> gui> の任意のエディターを使用して、次のJavaプログラムを作成します。

SwingContainerDemo.java

package com.finddevguides.gui;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class SwingContainerDemo {
   private JFrame mainFrame;
   private JLabel headerLabel;
   private JLabel statusLabel;
   private JPanel controlPanel;
   private JLabel msglabel;

   public SwingContainerDemo(){
      prepareGUI();
   }
   public static void main(String[] args){
      SwingContainerDemo  swingContainerDemo = new SwingContainerDemo();
      swingContainerDemo.showJFrameDemo();
   }
   private void prepareGUI(){
      mainFrame = new JFrame("Java Swing Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));

      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }
      });
      headerLabel = new JLabel("", JLabel.CENTER);
      statusLabel = new JLabel("",JLabel.CENTER);
      statusLabel.setSize(350,100);
      msglabel = new JLabel("Welcome to finddevguides SWING Tutorial.", JLabel.CENTER);

      controlPanel = new JPanel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);
   }
   private void showJFrameDemo(){
      headerLabel.setText("Container in action: JFrame");
      final JFrame frame = new JFrame();
      frame.setSize(300, 300);
      frame.setLayout(new FlowLayout());
      frame.add(msglabel);

      frame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            frame.dispose();
         }
      });
      JButton okButton = new JButton("Open a Frame");
      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("A Frame shown to the user.");
            frame.setVisible(true);
         }
      });
      controlPanel.add(okButton);
      mainFrame.setVisible(true);
   }
}

コマンドプロンプトを使用してプログラムをコンパイルします。 D:/> SWING に移動して、次のコマンドを入力します。

D:\SWING>javac com\finddevguides\gui\SwingContainerDemo.java

エラーが発生しない場合、コンパイルが成功したことを意味します。 次のコマンドを使用してプログラムを実行します。

D:\SWING>java com.finddevguides.gui.SwingContainerDemo

次の出力を確認します。

SWING JFrame