english version

Wie zentriere ich eine Komponente?


Wie zentriere ich eine Komponente?
Wie zentriere ich eine Komponente auf dem Bildschirm?

Das Zentrieren einer Komponente bzw. das Zentrieren einer Komponente auf dem Bildschirm sind zwei sehr ähnlich. Die hier dargestellte Klasse erfüllt sowohl die Aufgabe eine Komponente auf dem Bildschirm zu zentrieren als auch eine Komponente zentriert zu einer anderen Komponente.

package de.bastie.howto.gui;

import java.awt.*;

/**
 * Title:        Make Java - How To
 * Description:  Verschieden Methoden für die grafische Oberfläxhe
 * Copyright:    Copyright © 2002 - free for all use
 * @author Bastie - Sebastian Ritter
 * @version 1.0.0.0
 */

public class GUITool {

  /** Toolkitinstanz */
  final static Toolkit defaultToolkit = Toolkit.getDefaultToolkit ();

  /** Konstruktor */
  public GUITool () {}

  /** Diese Klassenmethode zentriert die übergebende Komponente auf
   *  dem Bildschirm.
   *  @param Component zu zentrierende Komponente
   *  @pattern MethodDelegate
   */
  public static void center (final Component toCenter) {
    Component main = new DefaultComponent ();
    // Setzen der Größe unserer main Komponente auf die Größe des Bildschirms.
    main.setSize(Toolkit.getDefaultToolkit().getScreenSize());
    // Delegieren der Aufgabe an die Methode center (Component, Component)
    GUITool.center (main, toCenter);
  }

  /** Diese Klassenmethode zentriert ein Komponente toCenter
   * im Verhältnis zu der Componente main
   * @param Component main
   * @param Component toCenter
   */
  public static void center (final Component main, final Component toCenter) {
    toCenter.setLocation ((int)(main.getSize().width /2
                               -toCenter.getSize().width /2
                               +main.getLocation().getX()),
                          (int)(main.getSize().height /2
                               -toCenter.getSize().height /2
                               +main.getLocation().getY())
                         );
  }

  /** Eine Defaultimplementation der Klasse Component
   */
  public static class DefaultComponent extends Component {}
}
all rights reserved © Bastie - Sebastian Ritter @: w³: http://www.Bastie.de
Diese Seite ist Bestandteil der Internetpräsenz unter http://www.Bastie.de


Java Cobol Software Resourcen Service Links Über mich