IMESTRUCT-Struktur (ime.h)
Wird von SendIMEMessageEx verwendet, um die in der IME-Nachricht (Input Method Editor) auszuführende Unterfunktion und die zugehörigen Parameter anzugeben. Diese Struktur wird auch verwendet, um Rückgabewerte von diesen Unterfunktionen zu empfangen.
Syntax
typedef struct tagIMESTRUCT {
UINT fnc;
WPARAM wParam;
UINT wCount;
UINT dchSource;
UINT dchDest;
LPARAM lParam1;
LPARAM lParam2;
LPARAM lParam3;
} IMESTRUCT, *PIMESTRUCT, *NPIMESTRUCT, *LPIMESTRUCT;
Member
fnc
Eine Unterfunktion. Einer der folgenden Werte.
IME_ENTERWORDREGISTERMODE
Wird zum Registrieren von Wörtern verwendet. Wörter werden registriert, als eine Anwendung ein Wort und dessen Lesevorgang sendet. Strukturmember werden wie folgt interpretiert:
Member | Typ | BESCHREIBUNG |
---|---|---|
lParam1 [Windows 3.1] | LPARAM | Das Wort mit niedriger Reihenfolge gibt ein Handle für den globalen Arbeitsspeicher an, das eine Wortzeichenfolge enthält, die auf 0 endet. Der globale Arbeitsspeicher ist ein Speicherblock, der durch Angabe der GMEM_MOVEABLE - und GMEM_SHARE-Flags in der GlobalAlloc-Funktion zugewiesen wird. |
lParam2 [Windows 3.1] | LPARAM | Das Wort mit niedriger Reihenfolge gibt ein Handle für den globalen Arbeitsspeicher an, das eine Lesezeichenfolge enthält, die auf 0 endet. Der globale Arbeitsspeicher ist ein Speicherblock, der durch Angabe der GMEM_MOVEABLE - und GMEM_SHARE-Flags in der GlobalAlloc-Funktion zugewiesen wird. |
lParam3 [Windows 3.1] | LPARAM | Muss NULL sein. |
lParam1 [Windows NT] | LPARAM | Gibt ein Handle für den globalen Arbeitsspeicher an, das eine Wortzeichenfolge enthält, die auf 0 endet. Der globale Arbeitsspeicher ist ein Speicherblock, der durch Angabe der GMEM_MOVEABLE - und GMEM_SHARE-Flags in der GlobalAlloc-Funktion zugewiesen wird. |
lParam2 [Windows NT] | LPARAM | Gibt ein Handle für den globalen Arbeitsspeicher an, das eine Lesezeichenfolge enthält, die auf 0 endet. Der globale Arbeitsspeicher ist ein Speicherblock, der durch Angabe der GMEM_MOVEABLE - und GMEM_SHARE-Flags in der GlobalAlloc-Funktion zugewiesen wird. |
lParam3 [Windows NT] | LPARAM | Wird verwendet, um Informationen zu einem Teil der Sprache anzugeben. Da solche Informationen mit der aktuellen Windows-Spezifikation nicht angegeben werden können, wird hier NULL festgelegt. |
Der Rückgabewert gibt das Ergebnis der Wortregistrierung an. TRUE , wenn die Registrierung normal verarbeitet wurde; andernfalls FALSE.
Wenn Informationen wie ein Teil der Sprache erforderlich sind, sollte ein Dialogfeld angezeigt werden, um den Benutzer zur Eingabe aufzufordern. NULL kann in den Membern lParam1 und lParam2 angegeben werden. in diesem Fall sollte nichts im zugeordneten Eingabefeld im Dialogfeld angezeigt werden.
IME_GETCONVERSIONMODE
Ruft den aktuellen Konvertierungsmodus der IME ab. Dieses Unterprogramm verwendet keine Parameter.
Dies ist identisch mit IME_GET_MODE.
Gibt den aktuellen Konvertierungsmodus des IME als Kombination aus IME_MODE_ALPHANUMERIC zu IME_MODE_NOCODEINPUT zurück. Die Konvertierungsmodi sind wie folgt:
Konvertierungsmodus | Mode |
---|---|
IME_MODE_ALPHANUMERIC | Alphanumerisch |
IME_MODE_KATAKANA | Katakana |
IME_MODE_HIRAGANA | Hiragana |
IME_MODE_SBCSCHAR | Einzelbytezeichen |
IME_MODE_DBCSCHAR | Double-Byte-Zeichen |
IME_MODE_ROMAN | Römisches Zeichen |
IME_MODE_NOROMAN | Nicht römisches Zeichen |
IME_MODE_CODEINPUT | Codeeingabe |
IME_MODE_NOCODEINPUT | Nicht-Code-Eingabe |
IME_GET_MODE
Identisch mit IME_GETCONVERSIONMODE.
IME_MOVECONVERTWINDOW
Identisch mit IME_SETCONVERSIONWINDOW.
IME_SETCONVERSIONFONTEX
Eine Schriftart, die verwendet werden soll, um eine unbestimmte Zeichenfolge anzuzeigen, die im Konvertierungsfenster angezeigt wird. Strukturmember werden wie folgt interpretiert:
Member | Typ | BESCHREIBUNG |
---|---|---|
lParam1 [Windows 3.1] | LPARAM | Das Wort mit niedriger Reihenfolge gibt ein Handle für den globalen Arbeitsspeicher an, das eine LOGFONT-Struktur enthält, die die logische Schriftart angibt. Der globale Arbeitsspeicher ist ein Speicherblock, der durch Angabe der GMEM_MOVEABLE - und GMEM_SHARE-Flags in der GlobalAlloc-Funktion zugewiesen wird. NULL gibt eine Systemschriftart an. |
lParam1 [Windows NT] | LPARAM | Gibt ein Handle für den globalen Arbeitsspeicher an, das eine LOGFONT-Struktur enthält, die die logische Schriftart angibt. Der globale Arbeitsspeicher ist ein Speicherblock, der durch Angabe der GMEM_MOVEABLE - und GMEM_SHARE-Flags in der GlobalAlloc-Funktion zugewiesen wird. NULL gibt eine Systemschriftart an. |
Diese Unterfunktion hat keinen Rückgabewert.
Die von IME_SETCONVERSIONFONTEX angegebene Schriftart kann nur verwendet werden, um unbestimmte Zeichenfolgen anzuzeigen.
Verwenden Sie eine Systemschriftart, um nicht festgelegte Zeichenfolgen an der Standardposition anzuzeigen. Wenn die Anzeigeposition nicht mehr die Standardposition ist, aktivieren Sie die zuvor angegebene Schriftart.
Der globale Arbeitsspeicher, der die LOGFONT-Struktur enthält, wird von der Anwendung freigegeben.
Wenn der IME, der derzeit das Konvertierungsfenster anzeigt, den Befehl IME_SETCONVERSIONFONTEX empfängt und sich das Konvertierungsfenster durch den Befehl geändert hat, sollte die IME eine WM_IME_REPORT:IR_CHANGECONVERT-Nachricht senden. Diese Nachricht sollte nicht gesendet werden, wenn die von IME_SETCONVERSIONFONTEX angegebene Schriftart mit der schriftart identisch ist, die vom IME verwendet wird.
IME_SETCONVERSIONMODE
Legt den Konvertierungsmodus der IME fest. Das wParam-Element gibt mindestens einen der folgenden Werte an:
Wert | Bedeutung |
---|---|
IME_MODE_ALPHANUMERIC | Alphanumerischer Konvertierungsmodus. Dieser Wert kann nicht mit IME_MODE_KATAKANA oder IME_MODE_HIRAGANA verwendet werden. |
IME_MODE_KATAKANA | Katakana-Konvertierungsmodus. Dieser Wert kann nicht mit IME_MODE_ALPHANUMERIC oder IME_MODE_HIRAGANA verwendet werden. |
IME_MODE_HIRAGANA | Hiragana-Konvertierungsmodus. Dieser Wert kann nicht mit IME_MODE_ALPHANUMERIC oder IME_MODE_HIRAGANA verwendet werden. |
IME_MODE_SBCSCHAR | Ein-Byte-Zeichenkonvertierungsmodus. Dieser Parameter kann nicht mit IME_MODE_DBCSCHAR verwendet werden. |
IME_MODE_DBCSCHAR | Doppelbyte-Zeichenkonvertierungsmodus. Dieser Parameter kann nicht mit IME_MODE_SBCSCHAR verwendet werden. |
IME_MODE_ROMAN | Konvertierungsmodus für römische Zeichen. Dieser Parameter kann nicht mit IME_MODE_NOROMAN verwendet werden. |
IME_MODE_NOROMAN | Nicht römischer Zeichenkonvertierungsmodus. Dieser Parameter kann nicht mit IME_MODE_ROMAN verwendet werden. |
IME_MODE_CODEINPUT | Codeeingabekonvertierungsmodus. Dieser Parameter kann nicht mit IME_MODE_NOCODEINPUT verwendet werden. Wie ein IME im Codeeingabemodus funktioniert, hängt von der jeweiligen IME ab. |
IME_MODE_NOCODEINPUT | Nicht codierter Eingabekonvertierungsmodus. Dieser Parameter kann nicht mit IME_MODE_CODEINPUT verwendet werden. |
Der Rückgabewert gibt an, ob der angegebene Konvertierungsmodus erfolgreich eingerichtet wurde. Es gibt den Zustand des Konvertierungsmodus zurück, der zuvor in Kraft war, wenn der neue Konvertierungsmodus eingerichtet wurde. andernfalls NULL.
IME_SETCONVERSIONWINDOW
Die Größe und Position des umgebenden Rechtecks für die IME sowie die Anfangsposition des Konvertierungsfensters. Die IME zeigt eine unbestimmte Zeichenfolge an der von dieser Unterfunktion angegebenen Position an.
Das wParam-Element gibt einen der folgenden Werte an:
Wert | Bedeutung |
---|---|
MCW_DEFAULT | Zeigt das Konvertierungsfenster an der Standardposition an, die sich normalerweise am unteren Rand des Bildschirms befindet.
Wenn die MCW_DEFAULT-Formatvorlage in einer IME_SETCONVERSIONWINDOW-Nachricht angegeben wird, darf der IME beim Anzeigen oder Zeichnet eines Konvertierungsfensters an der Standardposition keine IR_OPENCONVERT-, IR_CHANGECONVERT-, IR_FULLCONVERT- oder IR_CLOSECONVERT-Nachricht senden. |
MCW_WINDOW | Zeigt das Konvertierungsfenster an der Im lParam1-Element angegebenen Koordinate im Fenster an, das im wParam-Parameter der WM_CONVERTREQUEST- oder WM_CONVERTREQUESTEX-Nachricht angegeben ist. Der Wert in lParam1 gibt die Koordinaten relativ zur oberen linken Ecke des Fensters an, wobei das Wort mit niedriger Ordnung die X-Koordinate und das Wort mit hoher Ordnung die Y-Koordinate darstellt. Das umgebende Rechteck ist das Clientrechteck des angegebenen Fensters und die typischste Methode zum Aufrufen einer Kana-zu-Kanji-Konvertierung.
Wenn die MCW_WINDOW In einer IME_SETCONVERSIONWINDOW-Nachricht angegeben wird, muss die IME eine IR_OPENCOVERT Nachricht senden, wenn das Konvertierungsfenster status von geschlossen in geöffnet geändert wurde. Wenn das Konvertierungsfenster status von geöffnet in geschlossen geändert wurde, muss die IME eine IR_CLOSECONVERT Nachricht senden. Es gibt jedoch eine Ausnahme. Weitere Informationen finden Sie unter IME_WINDOWUPDATE. |
MCW_WINDOW | MCW_RECT | Identisch mit MCW_WINDOW außer, dass das umgebende Rechteck durch die Elemente lParam2 und lParam3 angegeben wird. Das lParam2-Element gibt den oberen linken Punkt an, und lParam3 gibt den unteren rechten Punkt an, wobei jeweils das Wort mit niedriger Ordnung die X-Koordinate und das Wort mit hoher Ordnung die Y-Koordinate darstellt. Die Koordinaten sind relativ zur oberen linken Seite des Fensters. |
MCW_SCREEN | Zeigt das Konvertierungsfenster mit der linken oberen Ecke an, die vom lParam1-Element festgelegt ist. Das Element lParam1 gibt absolute Koordinaten mit dem Ursprung in der oberen linken Ecke des Bildschirms an. Das Wort mit niedriger Ordnung stellt die X-Koordinate und das Wort mit hoher Ordnung die Y-Koordinate dar. Das umgebende Rechteck ist der Vollbildmodus.
Wenn die MCW_SCREEN In einer IME_SETCONVERSIONWINDOW-Nachricht angegeben wird, muss der IME eine IR_OPENCOVERT Nachricht senden, wenn das Konvertierungsfenster status von geschlossen in geöffnet geändert wurde. Wenn das Konvertierungsfenster status von geöffnet in geschlossen geändert wurde, muss die IME eine IR_CLOSECONVERT Nachricht senden. Es gibt jedoch eine Ausnahme. Weitere Informationen finden Sie unter IME_WINDOWUPDATE. |
MCW_SCREEN | MCW_RECT | Identisch mit MCW_SCREEN mit der Ausnahme, dass das umgebende Rechteck durch die Elemente lParam2 und lParam3 angegeben wird. Das lParam2-Element gibt den oberen linken Punkt an, und lParam3 gibt den unteren rechten Punkt an, wobei jeweils das Wort mit niedriger Ordnung die X-Koordinate und das Wort mit hoher Ordnung die Y-Koordinate darstellt. Die Koordinaten sind absolute Koordinaten mit dem Ursprung oben links auf dem Bildschirm. |
MCW_HIDDEN [Windows 3.1] | Wenn dieses Flag angegeben wird, zeigt die IME das Konvertierungsfenster nicht an. Stattdessen zeigt die Anwendung selbst unbestimmte Zeichenfolgen an. Das lParam1-Element gibt die Koordinaten der Cursorposition an, die von der Anwendung oder dem Sehenswürdigkeit angezeigt wird. Die Elemente lParam2 und lParam3 geben eine Region an, in der keine Anzeige durch die IME aktiviert wird. Eine IME, die bestimmt Zeichenfolgenkandidaten in einem Popupfenster anzeigt, kann diese Informationen verwenden, um zu bestimmen, wo das Fenster der Kandidaten für bestimmte Zeichenfolgen angezeigt werden soll. Ein Fenster zum Anzeigen von Kandidatenzeichenfolgen wird als Systemfenster betrachtet. Daher ist es IME-abhängig, ob ein solches Fenster angezeigt werden soll, wo und wie das Fenster angezeigt werden soll und welche Tastatureingabe verwendet werden soll. Die drei Elemente lParam1, lParam2 und lParam3 geben die absoluten Koordinaten oben links auf dem Bildschirm an, wobei jeweils das Wort mit niedriger Ordnung die X-Koordinate und das Wort mit hoher Ordnung die Y-Koordinate darstellt.
Wenn das flag MCW_HIDDEN angegeben wird, sendet der IME eine IR_UNDETERMINE-Nachricht, um anzufordern, dass die Anwendung die nicht festgelegte Zeichenfolge anzeigt. Die Anwendung selbst zeigt die unbestimmte Zeichenfolge an, die in dieser Nachricht enthalten ist. Nachdem das MCW_HIDDEN-Flag angegeben wurde, sendet die IME keine IR_OPENCONVERT, IR_CHANGECONVERT oder IR_CLOSECONVERT Nachricht. Wenn eine Anwendung MCW_HIDDEN angibt und gleichzeitig ein Rechteck anfordert, das zu groß ist, um das Kandidatenfenster für eine bestimmte Zeichenfolge anzuzeigen, sollte dies als Fehler behandelt werden. Der Fehlercode muss IME_RD_TOOLONG werden. Wenn die MCW_HIDDEN-Formatart in einer IME_SETCONVERSIONWINDOW-Nachricht angegeben wird, darf der IME niemals ein IR_OPENCONVERT, IR_CHANGECONVERT, IR_FULLCONVERT oder IR_CLOSECONVERT senden. |
MCW_VERTICAL | Teilt dem IME mit, dass die Anwendung Zeichenfolgen im vertikalen Schreibformat anzeigt. Wenn dieses Flag angegeben wird, wird das Konvertierungsfenster für vertikales Schreiben angezeigt, wobei die vom lParam1-Element angegebene Position die obere rechte Ecke ist. Dieses Flag kann mit MCW_WINDOW angegeben werden, MCW_WINDOW|MCW_RECT, MCW_SCREEN oder MCW_SCREEN|MCW_RECT. Ein IME muss MCW_VERTICAL unterstützen.
Wenn MCW_VERTICAL angegeben ist und die ausgewählte Schriftart nicht zum vertikalen Schreiben bestimmt ist, verwendet der IME die standardmäßige vertikale Schriftart. Diese Standardschriftart wird wie folgt erstellt:
|
Der Rückgabewert gibt an, ob der Befehl ausgeführt wurde. TRUE , wenn die Befehlsausführung erfolgreich war; andernfalls FALSE.
Wenn eine nicht festgelegte Zeichenfolge das umgebende Rechteck zu überlaufen scheint, muss der IME die Berichtsnachricht WM_IME_REPORT:IR_FULLCONVERT an die Anwendung ausgeben, bevor diese Zeichenfolge angezeigt wird. Wenn die Anwendung diese Meldung nicht verarbeitet, wird die nachfolgende Verarbeitung für die Anzeige nicht in dieser Spezifikation formuliert, sondern der IME überlassen. Beispielsweise kann die unbestimmte Zeichenfolge innerhalb des umgebenden Rechtecks gescrollt oder vorübergehend an die Standardposition verschoben werden.
Wenn eine IME_SETCONVERSIONWINDOW Nachricht aufgerufen wird, wenn die IME eine unbestimmte Zeichenfolge enthält, sollte die IME eine WM_IME_REPORT:IR_CLOSECONVERT-Nachricht ausgeben. wenn die Zeichenfolge in das als Parameter angegebene Fenster passt, sollte die IME eine WM_IME_REPORT:IR_OPENCONVERT-Nachricht ausgeben. Erst dann sollte das Konvertierungsfenster gezeichnet werden. Wenn die Zeichenfolge nicht in das Fenster passt, sollte die IME eine WM_IME_REPORT:IR_FULLCONVERT-Meldung ausgeben.
Die Position des umgebenden Rechtecks kann außerhalb des physischen Bildschirmbereichs angegeben werden. Wenn sich das gesamte umgebende Rechteck außerhalb des physischen Bildschirms befindet, dürfen nicht festgelegte Zeichenfolgen nicht angezeigt werden. Wenn sich ein Teil des umgebenden Rechtecks außerhalb des physischen Bildschirms befindet, klammert die IME das umgebende Rechteck so ab, dass kein Teil der nicht bestimmten Zeichenfolge den Bildschirm überläuft, und passt auch die Startposition der Anzeige an.
Es wird empfohlen, die maximale Anzahl von Zeilen oder die maximale Anzahl von Zeichen, die im Konvertierungsfenster angezeigt werden, nicht festzulegen.
Wenn das Konvertierungsfenster ein Systemfenster überschneidet, muss das Konvertierungsfenster sichtbar sein. Beispielsweise kann das Konvertierungsfenster für die Anzeige oberste Priorität erhalten oder das Systemfenster an eine andere Stelle verschoben werden.
Die IME muss eine IR_CHANGECONVERT Nachricht senden, wenn sich das Konvertierungsfenster in Größe, Anzeigeinhalt oder Anzeigefarbe geändert hat. Wenn jedoch eine unbestimmte Zeichenfolge nicht in ein angegebenes Fenster passt, muss der IME eine IR_FULLCONVERT Nachricht senden, anstatt IR_CHANGECONVERT.
Wenn die IME aus dem MCW_WINDOW- oder MCW_SCREEN-Modus in MCW_DEFAULT verschoben wurde, muss sie eine IR_CLOSECONVERT Nachricht senden, wenn eine unbestimmte Zeichenfolge vorhanden ist.
Wenn die IME vom MCW_WINDOW- oder MCW_SCREEN-Modus in MCW_HIDDEN verschoben wurde, muss sie eine IR_CLOSECONVERT Nachricht senden, wenn eine unbestimmte Zeichenfolge vorhanden ist.
Wenn die IME vom MCW_HIDDEN Modus in MCW_DEFAULT, MCW_SCREEN oder MCW_WINDOW verschoben wurde, muss die IME eine IR_UNDETERMINE Nachricht mit nicht festgelegter Zeichenfolge = 0 und ermittelter Zeichenfolge = 0 übertragen.
IME_SETLEVEL
Koreanisch-spezifische Unterfunktion, die die IME-Ebene für die aktuelle Anwendung festlegt. Das wParam-Element akzeptiert einen der folgenden Ebenenwerte.
Ebene | Bedeutung |
---|---|
1 | Keine IME-Unterstützung. Alle IME-spezifischen Nachrichten werden ignoriert. |
2 | Teilweise IME-Unterstützung. Unterstützt eine Teilmenge des IME-Verhaltens, einschließlich der Position der Kompositions- oder Kandidatenfenster und des Eingabemodus oder status. |
3 | Vollständige IME-Unterstützung. |
IME_SETOPEN
Legt die status des Kana-in-kanji-Konvertierungsfeatures des IME fest.
Das wParam-Element ist auf nonzero festgelegt, um die IME zu öffnen, und null, um die IME zu schließen.
Der Rückgabewert gibt den vorherigen status des Konvertierungsfeatures kana-in-kanji an. Gibt TRUE zurück, wenn geöffnet; andernfalls FALSE.
Eine nicht festgelegte Zeichenfolge darf nicht bestimmt werden, wenn das Kana-in-Kanji-Konvertierungsfeature von IME_SETOPEN geschlossen wurde.
Wenn die Kana-zu-Kanji-Konvertierungsfunktion von IME_SETOPEN geschlossen werden soll, muss die IME eine IR_CLOSECONVERT-Nachricht senden, wenn sich die IME im MCW_WINDOW- oder MCW-SCREEN-Modus befindet und ein Konvertierungsfenster geöffnet ist. Der IME muss jedoch keine IR_CLOSECONVERT ausstellen, wenn er sich im MCW_HIDDEN Modus befindet und eine unbestimmte Zeichenfolge vorhanden ist.
IME_SET_MODEK
Koreanisch-spezifische Version von IME_SETCONVERSIONMODE.
wParam
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
wCount
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
dchSource
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
dchDest
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
lParam1
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
lParam2
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
lParam3
Die Nutzung hängt von der in fnc angegebenen Unterfunktion ab.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | ime.h |
Weitere Informationen
Konzept
Referenz