/***************************************************************/
/* Prof. Dr. Carsten Vogt                                      */
/* FH Koeln, Fak. 07 / Nachrichtentechnik                      */
/* http://www.nt.fh-koeln.de/vogt                              */
/*                                                             */
/* Das Programm demonstriert den Unterschied zwischen Frames   */
/* und Windows. Außerdem zeigt es einen internen Frame.        */
/***************************************************************/

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

public class FramesUndWindows {

 public static void main(String args[]) {

   // Frame erzeugen:

   JFrame frame = new JFrame("Frame");

   // Frame-Layout setzen:

   frame.getContentPane().setLayout(new GridLayout(2,1));

   // Label mit Beschriftung und Zeichentyp erzeugen ...

   JLabel label = new JLabel("Ein Frame");
   label.setFont(new Font("Arial",Font.BOLD,24));
   label.setForeground(Color.black);

   // ... und zum Frame hinzufuegen:

   frame.getContentPane().add(label);

   // Internen Frame, der ein Label enthaelt, erzeugen ...

   JInternalFrame intFrame = new JInternalFrame("Internal Frame");
   JLabel label2 = new JLabel("Internal Frame");
   label2.setFont(new Font("Arial",Font.BOLD,20));
   label2.setForeground(Color.black);
   intFrame.getContentPane().add(label2);

   // ... und zum Frame hinzufuegen:

   frame.getContentPane().add(intFrame);

   // Frames sichtbar machen:

   frame.pack();
   frame.setVisible(true);
   intFrame.pack();
   intFrame.setVisible(true);

   // Position und Groesse des Frames setzen:

   frame.setLocation(0,0);
   frame.setSize(350,300);   
  
   // Window erzeugen:

   JWindow window = new JWindow();

   // Label mit Beschriftung und Zeichentyp erzeugen ...

   JLabel label3 = new JLabel("Ein Window");
   label3.setFont(new Font("Arial",Font.BOLD,24));
   label3.setForeground(Color.black);

   // ... und zum Window hinzufuegen:

   window.getContentPane().add(label3);
   
   // Window sichtbar machen:

   window.pack();
   window.setVisible(true);

   // Position und Groesse des Windows setzen:

   window.setLocation(400,0);
   window.setSize(350,300);
  
  }

}

