Freigeben über


Fensterverwaltung

Hinweis

Dieses Entwurfshandbuch wurde für Windows 7 erstellt und wurde nicht für neuere Versionen von Windows aktualisiert. Ein Großteil der Anleitungen gilt weiterhin im Prinzip, aber die Präsentation und die Beispiele entsprechen nicht unseren aktuellen Entwurfsleitfäden.

In diesem Artikel werden die Standardplatzierung von Fenstern bei der anfänglichen Anzeige auf dem Bildschirm, ihre Stapelreihenfolge relativ zu anderen Fenstern (Z-Reihenfolge), ihre Anfangsgröße und die Auswirkungen ihrer Anzeige auf den Eingabefokus behandelt.

Für die folgenden Richtlinien:

  • Ein Fenster der obersten Ebene verfügt über kein Besitzerfenster und wird auf der Taskleiste angezeigt. Beispiele: Anwendungsfenster. In Windows Vista und höher werden Dialogfelder ohne Besitzerfenster und Eigenschaftenblätter ebenfalls als oberste Ebene betrachtet.
  • Ein eigenes Fenster verfügt über ein Besitzerfenster und wird nicht auf der Taskleiste angezeigt. Beispiele: modale Dialogfelder, moduslose Dialogfelder.
  • Ein vom Benutzer initiiertes Fenster wird als direktes Ergebnis der Aktion eines Benutzers angezeigt. Andernfalls wird es von einem Programm initiiert, wenn es von einem Programm initiiert wird, oder systeminitiiert, wenn es von Microsoft Windows initiiert wird. Beispielsweise wird ein Dialogfeld "Optionen" vom Benutzer initiiert, aber eine Besprechungserinnerung wird vom Programm initiiert.
  • Ein kontextbezogenes Fenster ist ein vom Benutzer initiiertes Fenster, das eine starke Beziehung zu dem Objekt aufweist, von dem aus es gestartet wurde. Beispielsweise sind Fenster, die von Kontextmenüs oder Benachrichtigungsbereichssymbolen angezeigt werden, kontextbezogen, Fenster, die von Menüleisten angezeigt werden, nicht.
  • Der aktive Monitor ist der Monitor, auf dem das aktive Programm ausgeführt wird.
  • Der Standardmonitor ist der Monitor mit dem Startmenü, der Taskleiste und dem Infobereich.

Entwurfskonzepte

Die Fensterverwaltung ist eine der grundlegendsten Benutzeraktivitäten. Vor Windows Vista wurden Fenster oft mit kleinen Standardgrößen versehen und in der Mitte des Bildschirms platziert. Dieser Ansatz funktioniert gut für ältere Monitore mit niedriger Auflösung, aber nicht für moderne Videohardware.

Windows wurde entwickelt, um moderne Videohardware zu unterstützen, die häufig mit Auflösungen ausgeführt wird, die deutlich höher als die unterstützte Mindestauflösung sind und mehrere Monitore aufweisen können. Dadurch geschieht Folgendes:

  • Ermöglicht es Benutzern, vollständig von ihrer erweiterten Hardware zu profitieren.
  • Erfordert weniger Aufwand von Benutzern, um ihre Maus über größere Entfernungen zu bewegen.
  • Macht die Fensterplatzierung besser vorhersagbar und damit leichter auffindbar.

Die mindestens unterstützte Bildschirmauflösung

Die minimale effektive Bildschirmauflösung , die von Windows unterstützt wird, beträgt 800 x 600 Pixel. Dies bedeutet, dass Fenster mit fester Größe vollständig mit der minimalen Auflösung angezeigt werden sollten (wobei Speicherplatz für die Taskleiste reserviert wird), aber fensterveränderliche Fenster können für eine effektive Auflösung von 1024 x 768 Pixel optimiert werden, solange sie mit der Mindestauflösung funktionsfähig sind.

Während die derzeit häufigsten physischen Bildschirmauflösungen für Windows-PCs 1024 x 768 Pixel oder höher sind, ermöglicht windows folgendes:

  • Funktioniert gut mit aller modernen Hardware, einschließlich kleiner Notebook-PCs.
  • Unterstützt Einstellungen für hohe DPI -Werte (Punkte pro Zoll).
  • Unterstützung größerer Schriftarten für Barrierefreiheit.
  • Unterstützung von Hardware, die auf globaler Basis verwendet wird.

Die Auswahl der minimalen Auflösung, die unterstützt werden soll, erfordert das richtige Gleichgewicht. Die Ausrichtung auf eine höhere Auflösung würde zu einer suboptimalen Erfahrung für einen erheblichen Prozentsatz der modernen Hardware führen, während das Ziel einer niedrigeren Auflösung Designer daran hindern würde, den verfügbaren Bildschirmraum vollständig zu nutzen.

Wenn Sie der Meinung sind, dass Ihre Zielbenutzer deutlich höhere Auflösungen als die Windows-Mindestauflösung verwenden, können Sie Ihr Programm so entwerfen, dass es den zusätzlichen Bildschirmraum voll ausschöpfen kann, indem Sie die größenveränderlichen Fenster verwenden, die gut skaliert werden.

Richtlinien

Allgemein

  • Unterstützt die minimale effektive Windows-Auflösung von 800 x 600 Pixel. Für kritische Benutzeroberflächen ( UIs), die im abgesicherten Modus funktionieren müssen, unterstützen Sie eine effektive Auflösung von 640 x 480 Pixel. Achten Sie darauf, den von der Taskleiste belegten Platz zu berücksichtigen, indem Sie 48 vertikale relative Pixel für Fenster reservieren, die mit der Taskleiste angezeigt werden.
  • Optimieren Sie veränderbare Fensterlayouts für eine effektive Auflösung von 1024 x 768 Pixeln. Ändern Sie die Größe dieser Fenster automatisch, um niedrigere Bildschirmauflösungen auf eine noch funktionsfähige Weise zu verwenden.
  • Stellen Sie sicher, dass Sie Ihre Fenster in 96 dpi (100 Prozent) bei 800 x 600 Pixeln, 120 dpi (125 Prozent) bei 1024x768 Pixeln und 144 dpi (150 Prozent) bei 1200 x 900 Pixeln testen. Überprüfen Sie, ob Layoutprobleme auftreten, z. B. das Ausschneiden von Steuerelementen, Text und Fenstern sowie das Strecken von Symbolen und Bitmaps.
  • Optimieren Sie für Programme mit Toucheingabe und mobilen Verwendungsszenarien für 120 dpi. Bildschirme mit hohem DPI-Wert sind derzeit auf Touch- und mobilen PCs weit verbreitet.
  • Größenänderungsfähige Fenster dürfen die Größenänderungssymbole in der unteren rechten Ecke nicht mehr anzeigen, weil:
    • Die Größe aller Seiten und Kanten eines Fensters kann geändert werden, nicht nur die untere rechte Ecke.
    • Für die Anzeige der Glyphe ist eine status-Leiste erforderlich, aber viele fenster mit größenveränderlicher Größe bieten keine status Balken.
    • Die Fensterrahmen und Die Zeiger zur Größenänderung sind effektiver bei der Kommunikation, dass die Größe eines Fensters geändert werden kann, als die Größenänderungssymbole.

Titelleistensteuerelemente

Verwenden Sie die Titelleistensteuerelemente wie folgt:

  • Fast richtig. Alle primären und sekundären Fenster mit einem Standardfensterrahmen sollten über die Schaltfläche Schließen auf der Titelleiste verfügen. Wenn Sie auf Schließen klicken, wird das Fenster abgebrochen oder geschlossen.

Screenshot des Dialogfelds ohne Schaltfläche

In diesem Beispiel enthält das Dialogfeld keine Schaltfläche Schließen in der Titelleiste.

  • Minimieren. Alle primären Fenster und zeitintensiven sekundären Fenster (z. B. Statusdialoge) sollten über die Schaltfläche Minimieren verfügen. Durch Klicken auf Minimieren wird das Fenster auf seine Taskleistenschaltfläche reduziert. Daher benötigen Fenster, die minimiert werden können, ein Titelleistensymbol.
  • Maximieren/Wiederherstellen nach unten. Alle Fenster, die in der Größe geändert werden können, sollten über die Schaltfläche Nach unten maximieren/wiederherstellen verfügen. Wenn Sie auf Maximieren klicken, wird das Fenster in seiner größten Größe angezeigt, die für die meisten Fenster vollbildlich ist. Wenn Sie dagegen auf Wiederherstellen klicken, wird das Fenster in seiner vorherigen Größe angezeigt. Einige Fenster profitieren jedoch nicht von der Verwendung eines Vollbildmodus, sodass diese Fenster auf ihre größte nützliche Größe maximieren sollten.

Fenstergröße

  • Wählen Sie eine Standardfenstergröße aus, die für den Inhalt geeignet ist. Scheuen Sie sich nicht, größere Anfangsfenstergrößen zu verwenden, wenn Sie den Platz effektiv nutzen können.
  • Verwenden Sie jederzeit veränderbare Fenster, um Bildlaufleisten und abgeschnittene Daten zu vermeiden. Windows mit dynamischen Inhalten und Listen profitieren am meisten von größenveränderlichen Fenstern.
  • Für Textdokumente sollten Sie eine maximale Zeilenlänge von 65 Zeichen in Betracht ziehen, damit der Text leicht lesbar ist. (Zeichen umfassen Buchstaben, Interpunktionszeichen und Leerzeichen.)
  • Fenster mit fester Größe:
    • Muss vollständig sichtbar sein und in den Arbeitsbereich passen.
  • Fenster in der Größe ändern:
    • Kann für höhere Auflösungen optimiert werden, aber bei Bedarf zur Anzeigezeit auf die tatsächliche Bildschirmauflösung herabgestemdet werden.
    • Für immer größere Fenstergrößen müssen schrittweise weitere Informationen angezeigt werden. Stellen Sie sicher, dass mindestens ein Fensterbereich oder ein Steuerelement über veränderbaren Inhalt verfügt.
    • Sollte standardmäßige wiederhergestellte Größen vermeiden, die maximiert oder nahezu maximiert sind. Wählen Sie stattdessen eine Standardgröße aus, die in der Regel am nützlichsten ist, ohne im Vollbildmodus zu sein. Angenommen, Benutzer maximieren das Fenster, anstatt die Größe so zu ändern, dass es im Vollbildmodus angezeigt wird.
    • Sollte eine Minimale Fenstergröße festlegen, wenn eine Größe vorhanden ist, unter der der Inhalt nicht mehr verwendet werden kann. Legen Sie bei Steuerelementen, die die größesveränderliche Mindestgröße von Elementen ändern können, auf die kleinsten funktionalen Größen fest, z. B. die minimale Funktionale Spaltenbreite in Listenansichten.
    • Sollte die Präsentation ändern, wenn dies dazu führt, dass der Inhalt in kleineren Größen verwendet werden kann.

Screenshot der Media Player-Schaltflächen

In diesem Beispiel ändert Windows Medienwiedergabe sein Format, wenn das Fenster für das Standardformat zu klein wird.

Fensterposition

  • Für die folgenden Richtlinien bedeutet "Zentrieren", dass die vertikale Platzierung leicht nach oben auf dem Monitor ausgerichtet wird, anstatt genau in der Mitte zu platzieren. Legen Sie 45 Prozent des Abstands zwischen dem oberen Rand des Monitors/Besitzers und dem Fenster oben und 55 Prozent zwischen dem unteren Bereich des Monitors/Besitzers und dem unteren Fenster ein. Gehen Sie dazu vor, weil das Auge auf natürliche Weise nach oben auf dem Bildschirm ausgerichtet ist.

    Abbildung des Fensters, das etwas über der Mitte platziert ist

    "Zentrieren" bedeutet, die vertikale Platzierung leicht nach oben auf dem Monitor zu richten.

  • Wenn ein Fenster kontextbezogen ist, zeigen Sie es immer in der Nähe des Objekts an, von dem aus es gestartet wurde. Platzieren Sie es aus dem Weg, sodass das Quellobjekt nicht vom Fenster abgedeckt wird.

    • Wenn sie mit der Maus angezeigt wird, platzieren Sie ihn nach Möglichkeit nach unten und rechts.

    Abbildung eines kontextbezogenen Fensters, das sich rechts vom Objekt befindet

    Kontextfenster in der Nähe des Objekts anzeigen, von dem aus es gestartet wurde.

    Abbildung des Fensters

    Über den Infobereich gestartete Windows-Symbole werden in der Nähe des Infobereichs angezeigt.

  • Wenn sie mit einem Stift angezeigt wird, platzieren Sie ihn nach Möglichkeit so, dass er nicht von der Hand des Benutzers verdeckt wird. Für Rechtshänder: Anzeige auf der linken Seite; andernfalls rechts angezeigt.

    Abbildung eines kontextbezogenen Fensters, das sich links vom Objekt befindet

    Wenn Sie einen Stift verwenden, zeigen Sie auch kontextbezogene Fenster an, damit sie nicht von der Hand des Benutzers verdeckt werden.

  • Entwickler: Sie können zwischen Mausereignissen und Stiftereignissen mithilfe der GetMessageExtraInfo-API unterscheiden. Sie können die Händigkeit des Benutzers mithilfe der SystemParametersInfo-API mit SPI_GETMENUDROPALIGNMENT bestimmen.

  • Platzieren Sie Statusdialoge in der unteren rechten Ecke des aktiven Monitors aus dem Weg.

    Abbildung der Statusanzeige in der unteren rechten Ecke

    Platzieren Sie Statusdialoge in der unteren rechten Ecke.

  • Wenn ein Fenster nicht mit dem aktuellen Kontext oder der aktuellen Benutzeraktion verknüpft ist, platzieren Sie es außerhalb der aktuellen Zeigerposition. Dadurch wird eine versehentliche Interaktion verhindert.

  • Wenn ein Fenster eine Anwendung oder ein Dokument der obersten Ebene ist, kaskadieren Sie immer den Ursprung von der oberen linken Ecke des Monitors. Wenn sie vom aktiven Programm erstellt wird, verwenden Sie den aktiven Monitor. Verwenden Sie andernfalls den Standardmonitor.

    Abbildung von drei Fenstern, die von links oben kaskadieren

    Kaskadierende Anwendungs- oder Dokumentfenster der obersten Ebene an der oberen linken Ecke des Monitors.

  • Wenn ein Fenster ein Hilfsprogramm der obersten Ebene ist, zeigen Sie es immer "zentriert" im Monitor an. Wenn sie vom aktiven Programm erstellt wird, verwenden Sie den aktiven Monitor. Verwenden Sie andernfalls den Standardmonitor.

    Abbildung des Hilfsfensters, das im Monitor zentriert ist

    Zentrieren von Hilfsprogrammfenstern auf oberster Ebene.

  • Wenn ein Fenster ein eigenes Fenster ist, zeigen Sie es zunächst "zentriert" oben im Besitzerfenster an. Erwägen Sie für die nachfolgende Anzeige die Anzeige an der letzten Position (relativ zum Besitzerfenster), wenn dies wahrscheinlich bequemer ist.

    Abbildung des eigenen Fensters, das über dem Besitzerfenster zentriert ist

    Anfänglich eigene Fenster über dem Besitzerfenster zentrisieren.

  • Bei moduslosen Dialogen werden sie immer zuerst über dem Besitzerfenster angezeigt, damit sie leicht zu finden sind. Wenn der Benutzer jedoch das Besitzerfenster aktiviert, kann dies den moduslosen Dialog verdecken.

    Abbildung des moduslosen Dialogfelds über dem Besitzerfenster

    Anzeigen von moduslosen Dialogen zunächst oben im Besitzerfenster, damit sie leicht zu finden sind.

  • Passen Sie bei Bedarf die ursprüngliche Position so an, dass das gesamte Fenster im Zielmonitor sichtbar ist. Wenn ein Fenster mit veränderlicher Größe größer als der Zielmonitor ist, reduzieren Sie es an die Anpassung.

Fensterreihenfolge (Z-Bestellung)

  • Platzieren Sie die eigenen Fenster immer auf ihrem Besitzerfenster. Platzieren Sie niemals eigene Fenster unter ihren Besitzerfenstern, da die Benutzer sie wahrscheinlich nicht sehen werden.
  • Achten Sie auf die Auswahl der Z-Reihenfolge der Benutzer. Wenn Benutzer ein Fenster auswählen, bringen Sie nur die Fenster, die diesem instance des Programms zugeordnet sind (das Fenster plus alle besitzer- oder besitzereigenen Fenster) an den Anfang der Z-Reihenfolge. Ändern Sie nicht die Reihenfolge anderer Fenster, z. B. unabhängiger Instanzen desselben Programms.

Aktivieren von Fenstern

  • Achten Sie auf die Auswahl des Fensterzustands des Benutzers. Wenn ein vorhandenes Fenster Aufmerksamkeit benötigt, blinken Sie die Taskleistenschaltfläche dreimal, um die Aufmerksamkeit zu wecken, und lassen Sie es hervorgehoben, aber tun Sie nichts anderes. Stellen Sie das Fenster nicht wieder her oder aktivieren Sie es nicht. Verwenden Sie keine Soundeffekte. Lassen Sie stattdessen Benutzern das Fenster aktivieren, wenn sie bereit sind.
    • Ausnahme: Wenn das Fenster nicht auf der Taskleiste angezeigt wird, bringen Sie es an den oberen Rand aller anderen Fenster, und blinken Sie stattdessen die Titelleiste.
  • Beim Wiederherstellen eines primären Fensters sollten auch alle sekundären Fenster wiederhergestellt werden, auch wenn diese sekundären Fenster über eine eigene Taskleistenschaltfläche verfügen. Platzieren Sie beim Wiederherstellen sekundäre Fenster über dem primären Fenster.

Eingabefokus

  • Fenster, die von benutzerinitiierten Aktionen angezeigt werden, sollten den Eingabefokus haben, jedoch nur, wenn das Fenster sofort ( innerhalb von 5 Sekunden) gerendert wird. Nachdem das Fenster gerendert wurde, kann es den Eingabefokus einmal einnehmen.
    • Wenn ein Fenster langsam gerendert wird (mehr als 5 Sekunden), führen Benutzer wahrscheinlich eine andere Aufgabe aus, während sie warten. An diesem Punkt den Fokus zu nehmen, wäre ein Ärgernis, besonders wenn sie mehr als einmal durchgeführt wird.
  • Fenster, die nicht sofort von einer systeminitiierten Aktion angezeigt oder angezeigt werden, sollten den Eingabefokus nicht einnehmen. Zeigen Sie stattdessen oben ohne Fokus an, und lassen Sie benutzer sie aktivieren, wenn sie bereit sind.
    • Ausnahme: Anmeldeinformations-Manager.

Persistenz

  • Wenn ein Fenster erneut angezeigt wird, sollten Sie es im gleichen Zustand wie der letzte Zugriff anzeigen. Speichern Sie beim Schließen den verwendeten Monitor, die Fenstergröße, den Speicherort und den Zustand (maximiert im Vergleich zur Wiederherstellung). Stellen Sie bei der erneuten Anzeige die Größe, den Speicherort und den Zustand des gespeicherten Fensters mithilfe des entsprechenden Monitors wieder her. Erwägen Sie außerdem, diese Attribute auf Benutzerbasis über Programminstanzen hinweg beizubehalten. Ausnahmen:
    • Speichern Oder speichern Sie diese Attribute nicht für Fenster, wenn ihre Verwendung so ist, dass Benutzer mit viel höherer Wahrscheinlichkeit vollständig neu beginnen möchten.
    • Für Programme, die wahrscheinlich auf Windows Tablet- und Touchtechnologie Computern verwendet werden, speichern Sie zwei Fensterzustände für den Quer- und Hochformatmodus. Weitere Informationen finden Sie unter Entwerfen für unterschiedliche Anzeigegrößen.
  • Wenn die aktuelle Monitorkonfiguration verhindert, dass ein Fenster im letzten Zustand angezeigt wird:
    • Versuchen Sie, das Fenster mit dem letzten Monitor anzuzeigen.
    • Wenn das Fenster größer als der Monitor ist, ändern Sie die Größe des Fensters nach Bedarf.
    • Verschieben Sie die Position in Richtung der oberen linken Ecke, um nach Bedarf in den Monitor zu passen.
    • Wenn das Problem mit den oben genannten Schritten nicht behoben wird, rückgängig machen zu den Standardrichtlinien für die Fensterplatzierung. Erwägen Sie, nach Möglichkeit die vorherige Größe wiederherzustellen.