Registerkarte
Eine Registerkarte, auch Reiter oder Tab /tæb/ genannt, ist ein Steuerelement einer grafischen Benutzeroberfläche, das einem Registerblatt aus Aktenschränken nachempfunden wurde.
Verwendung
Registerkarten dienen dazu, Informationen und Eingabefelder eines Programmfensters auf mehreren hintereinander liegenden Dialogfeldern anzuordnen. Dabei befindet sich immer ein Dialogfeld im Vordergrund. Durch Anklicken des entsprechenden Reiters wird eine andere Registerkarte in den Vordergrund geholt, wobei die Informationen und gegebenenfalls getätigten Einstellungen auf den vorher genutzten Registerkarten bestehen bleiben.
Inzwischen werden Registerkarten nicht mehr nur für Dialogfelder eingesetzt. Sie dienen auch als Navigationselement in HTML-Seiten.
Als Alternative zu den Unterfenstern in MDI-Programmen werden sie heutzutage insbesondere von Webbrowsern zur Darstellung und gleichzeitigen Haltung von mehreren Webseiten innerhalb eines einzelnen Fensters verwendet. Diese Art der Bedienung nennt man auch Registernavigation oder Tabbed Browsing.
Gegenüber den freier positionierbaren und in der Größe individuell veränderbaren MDI-Fenstern stellen Registerkarten zunächst eine Einschränkung dar. Der Vorteil liegt aber in einer verbesserten Übersicht. Der Benutzer kann so die Registerseiten mit Hilfe der auf der Registerleiste angeordneten Reiter gezielt ansteuern.
Einige neuere Anwendungen, insbesondere einige moderne Texteditoren, versuchen inzwischen, die Vorteile von MDI-Fenstern und Registerkarten zu kombinieren. Dazu wird der Bereich, in dem die Registerkarten angezeigt werden, unterteilbar gemacht, sodass mehrere Registerkarten nebeneinander geöffnet werden können. Dadurch können beispielsweise die Inhalte unterschiedlicher Registerkarten einfacher verglichen werden. Einige Beispiele hierfür sind Notepad++ und Microsoft Visual Studio.
Eine Fensterregisterkarte ist ein Element der Benutzeroberfläche, mit dem Sie in einem einzigen Fenster zwischen mehreren Dokumenten navigieren können. Anstelle einer einzelnen Titelleiste kann ein Fenster mit Registerkarten oben mehrere Registerkarten enthalten. Durch Klicken auf eine der Registerkarten wird der Inhalt des entsprechenden Dokuments angezeigt.
Registerkarten sind in Webbrowsern zu einer allgemeinen Funktion geworden, da sie es ermöglichen, mehrere Webseiten zu öffnen, ohne den Bildschirm zu überladen. Die Registerkarten-Dokumentschnittstelle ist auch in anderen Programmen wie Adobe Photoshop und Finder von macOS geworden. Während Fenster mit Registerkarten ein übersichtlicheres Erscheinungsbild erzeugen, besteht der Nachteil darin, dass Sie jeweils nur den Inhalt einer Registerkarte anzeigen können. Daher können Sie in einigen Programmen auf eine Registerkarte klicken und diese ziehen, um ein neues Fenster aus der Registerkarte zu erstellen.[1]
Programmierung
C#
Das folgende Beispiel in der Programmiersprache C# zeigt die Implementierung eines Fensters, das einen Container (vom Typ TabControl) mit mehreren Registerkarten (vom Typ TabPage) enthält. Eine der Registerkarten enthält mehrere Buttons. Vorbild ist das Fenster für die Eigenschaften einer Aufgabe der Aufgabenplanung von Microsoft Windows.[2][3]
using System.Windows.Forms;
public class MainForm : System.Windows.Forms.Form
{
private System.Windows.Forms.TabControl newTabControl;
private System.Windows.Forms.TabPage actionsTabPage;
private System.Windows.Forms.TabPage triggersTabPage;
private System.Windows.Forms.TabPage generalTabPage;
private System.Windows.Forms.TabPage conditionsTabPage;
private System.Windows.Forms.TabPage settingsTabPage;
private System.Windows.Forms.TabPage historyTabPage;
private System.Windows.Forms.Button newButton;
private System.Windows.Forms.Button editButton;
private System.Windows.Forms.Button deleteButton;
// Konstruktor des MainForms.
public MainForm()
{
InitializeMenuStrip();
}
// Startet die Anwendung und erzeugt das MainForm durch Aufruf des Konstruktors.
public static void Main()
{
Application.Run(new MainForm());
}
// Initialisiert die Registerkarten.
private void InitializeTabPages()
{
// Erzeugt 6 Registerkarten und 3 Buttons durch Aufruf der Standardkonstruktoren.
newTabControl = new System.Windows.Forms.TabControl(); // Erzeugt den Container für die Registerkarten.
generalTabPage = new System.Windows.Forms.TabPage();
triggersTabPage = new System.Windows.Forms.TabPage();
actionsTabPage = new System.Windows.Forms.TabPage();
conditionsTabPage = new System.Windows.Forms.TabPage();
settingsTabPage = new System.Windows.Forms.TabPage();
historyTabPage = new System.Windows.Forms.TabPage();
newButton = new System.Windows.Forms.Button();
editButton = new System.Windows.Forms.Button();
deleteButton = new System.Windows.Forms.Button();
newTabControl.Location = new System.Drawing.Point(10, 10);
newTabControl.Size = new System.Drawing.Size(Width - 50, Height - 100);
newTabControl.SelectedIndex = 0;
newTabControl.TabIndex = 0;
newTabControl.Anchor = AnchorStyles.Left | AnchorStyles.Right | AnchorStyles.Top | AnchorStyles.Bottom;
Controls.Add(newTabControl);
// Setzt die Beschriftungen und fügt die Registerkarten dem Container hinzu.
generalTabPage.Text = "Allgemein";
newTabControl.Controls.Add(generalTabPage);
triggersTabPage.Text = "Trigger";
newTabControl.Controls.Add(triggersTabPage);
actionsTabPage.Text = "Aktionen";
newTabControl.Controls.Add(actionsTabPage);
conditionsTabPage.Text = "Bedingungen";
newTabControl.Controls.Add(conditionsTabPage);
settingsTabPage.Text = "Einstellungen";
newTabControl.Controls.Add(settingsTabPage);
historyTabPage.Text = "Verlauf";
newTabControl.Controls.Add(historyTabPage);
// Positioniert und beschriftet die Buttons und fügt sie der Registerkarte "Trigger" hinzu.
newButton.Location = new System.Drawing.Point(0, 150);
newButton.Text = "Neu";
triggersTabPage.Controls.Add(newButton);
editButton.Location = new System.Drawing.Point(100, 150);
editButton.Text = "Bearbeiten";
triggersTabPage.Controls.Add(editButton);
deleteButton.Location = new System.Drawing.Point(200, 150);
deleteButton.Text = "Löschen";
triggersTabPage.Controls.Add(deleteButton);
Text = "Aufgabenplanung"; // Setzt die Beschriftung des MainForms.
}
}
Siehe auch
Einzelnachweise
- Sharpened Productions, TechTerms: Tab
- Microsoft Docs: TabControl Class
- Microsoft Docs: TabPage Class