Sprachen und Gebietsschemas Tastaturlayouts

Eine Sprache ist eine natürliche Sprache, wie Englisch, Französisch und Japanisch. Eine Sublanguange ist eine Variante von einer natürlichen Sprache, die in einer bestimmten geographischen Region, wie z. B. die englischen Sprachvarianten gesprochen in Großbritannien und den Vereinigten Staaten gesprochen wird. Win32-basierten Anwendungen verwenden Sie Werte, genannt Sprachen-IDs, um Sprachen und Sprachvarianten eindeutig zu identifizieren.

Anwendungen in der Regel Gebietsschemas verwendet, um die Sprache einzustellen, in der Eingabe und Ausgabe verarbeitet. Die Einstellung des Gebietsschemas für die Tastatur, beeinflusst beispielsweise die Charakter-Werte durch die Tastatur generiert. Das Gebietsschema für die Anzeige oder den Drucker Einstellung beeinflusst die Symbole angezeigt oder gedruckt. Anwendungen legen das Gebietsschema für eine Tastatur von laden und Verwenden von Tastatur-Layouts. Sie festlegen das Gebietsschema für einen Bildschirm oder Drucker, indem Sie eine Schriftart, die das angegebene Gebietsschema unterstützt.

Ein Tastatur-Layout nicht nur gibt die physikalische Position der Tasten auf der Tastatur, sondern bestimmt auch die Charakter-Werte durch Drücken dieser Tasten erzeugt. Jedes Layout identifiziert die aktuelle Eingabesprache und bestimmt, welche Zeichenwerte durch die Tasten und Tastenkombinationen erzeugt werden.

Jedes Tastaturlayout hat eine entsprechende Zugriffsnummer, die das Layout und die Sprache identifiziert. Das niedrige Word des Griffs ist eine Sprachkennung. Das hohe Word ist ein Handle, das physikalische Layout angeben oder ist NULL, der angibt, eines physische Standardlayouts. Der Benutzer kann eine Eingabesprache mit einem bestimmten physischen Layout zuordnen. Beispielsweise kann ein Englisch sprechenden Benutzer arbeitet sehr gelegentlich auf Französisch die Sprache der Tastatur auf Französisch festgelegt, ohne das physische Layout der Tastatur ändern. Dies bedeutet, dass der Benutzer Text eingeben kann, in Französisch mit dem bekannte englische layout.

Anwendungen werden im Allgemeinen nicht voraussichtlich Eingabesprachen direkt bearbeiten. Stattdessen der Benutzer richtet Kombinationen aus Sprache und Layout, dann wechselt unter ihnen. Klickt der Benutzer in Text in einer anderen Sprache gekennzeichnet, ruft die Anwendung die ActivateKeyboardLayout -Funktion des Benutzers Standardlayout für diese Sprache aktivieren. Wenn der Benutzer Text in einer Sprache ist nicht in der aktiven Liste bearbeitet, kann die Anwendung die LoadKeyboardLayout -Funktion mit der Sprache eines Layouts auf Grundlage dieser Sprache erhalten aufrufen.

Die Funktion ActivateKeyboardLayout setzt die Eingabesprache für den aktuellen Vorgang. Der Hkl -Parameter kann entweder das Handle für das Tastaturlayout oder eine 0 (null) erweitert Sprachen-ID sein. Tastatur-Layout-Griffe können aus der LoadKeyboardLayout oder GetKeyboardLayoutList -Funktion abgerufen werden. Die Werte HKL_NEXT und HKL_PREV können auch verwendet werden, um die nächste oder vorherige Tastatur auszuwählen. Für einige Betriebssysteme der KLF_UNLOADPREVIOUS-Wert hat keine Bedeutung und wird ignoriert.

Die GetKeyboardLayoutName -Funktion Ruft den Namen der das aktive Tastaturlayout für den Aufrufthread. Wenn eine Anwendung das aktive Layout mit der LoadKeyboardLayout -Funktion erstellt, ruft GetKeyboardLayoutName , die dieselbe Zeichenfolge verwendet, um das Layout zu erstellen. Andernfalls ist die Zeichenfolge der primären Sprachen-ID entsprechend dem Gebietsschema der das aktive Layout. Das bedeutet, dass die Funktion nicht unbedingt zwischen verschiedenen Layouts mit der gleichen Hauptsprache, unterscheiden kann kann nicht also zurückgeben spezifische Informationen über die Eingabesprache. Die GetKeyboardLayout Funktion, kann jedoch verwendet werden, um die Eingabesprache zu bestimmen.

Die Funktion LoadKeyboardLayout lädt ein Tastatur-Layout und das Layout für dem Benutzer verfügbar macht. Anwendungen, die das Layout sofort für den aktuellen Thread aktiv machen können, mithilfe des KLF_ACTIVATE-Werts. Eine Anwendung kann den KLF_REORDER-Wert verwenden, das Layout neu anordnen ohne auch Angabe des KLF_ACTIVATE-Werts. Anwendungen sollten immer den Wert KLF_SUBSTITUTE_OK verwenden beim Laden von Tastaturlayouts um sicherzustellen, dass die Präferenz des Nutzers, ggf. ausgewählt ist. Bei einigen Betriebssystemen wird der KLF_UNLOADPREVIOUS-Wert ignoriert.

Für die mehrsprachige Unterstützung stellt die LoadKeyboardLayout -Funktion die Flags KLF_REPLACELANG und KLF_NOTELLSHELL. Das KLF_REPLACELANG-Flag leitet die Funktion einer vorhandenen Tastaturlayout ohne Ändern der Sprache ersetzt. Versuch, ersetzen Sie einen vorhandenen Layout mit den gleichen Sprachbezeichner jedoch ohne ist Angabe KLF_REPLACELANG ein Fehler. Das KLF_NOTELLSHELL-Flag verhindert, dass die Funktion die Shell zu benachrichtigen, wenn ein Tastatur-Layout hinzugefügt oder ersetzt wird. Dies ist nützlich für Anwendungen, die mehrere Layouts in eine aufeinander folgende Serie von Aufrufe hinzufügen. Dieses Flag sollte in allen außer den letzten Aufruf verwendet werden.

Die UnloadKeyboardLayout -Funktion ist eingeschränkt, dass es die Standardeingabesprache System entladen kann. Dadurch wird sichergestellt, dass der Benutzer immer zur Verfügung für ein Layout geben Sie Text mit den gleichen Zeichensatz wie die Shell und Datei-System.

Index