ImmSetCompositionStringA, fonction (imm.h)
Définit les caractères, les attributs et les clauses de la composition et des chaînes de lecture.
Syntaxe
BOOL ImmSetCompositionStringA(
HIMC unnamedParam1,
[in] DWORD dwIndex,
[in, optional] LPVOID lpComp,
[in] DWORD dwCompLen,
[in, optional] LPVOID lpRead,
[in] DWORD dwReadLen
);
Paramètres
unnamedParam1
[in] dwIndex
Type d’informations à définir. Ce paramètre peut avoir l’une des valeurs suivantes.
Valeur | Signification |
---|---|
|
Définissez la chaîne de composition, la chaîne de lecture ou les deux. Au moins l’un des paramètres lpComp et lpRead doivent indiquer une chaîne valide. Si l’une ou l’autre chaîne est trop longue, l’IME la tronque. |
|
Définissez des attributs pour la chaîne de composition, la chaîne de lecture ou les deux. Au moins l’un des paramètres lpComp et lpRead doivent indiquer un tableau d’attributs valide. |
|
Définissez les informations de clause pour la chaîne de composition, la chaîne de lecture ou les deux. Au moins l’un des paramètres lpComp et lpRead doivent pointer vers un tableau d’informations de clause valide. |
|
Windows Me/98, Windows 2000, Windows XP : Demander à IME de reconvertir la chaîne à l’aide d’une structure RECONVERTSTRING spécifiée. |
|
Windows Me/98, Windows 2000, Windows XP : Demander à IME d’ajuster la structure RECONVERTSTRING. Ensuite, l’application peut passer la structure ajustée dans cette fonction à l’aide de SCS_SETRECONVERTSTRING. IME ne génère aucun message WM_IME_COMPOSITION. |
[in, optional] lpComp
Pointeur vers une mémoire tampon contenant les informations à définir pour la chaîne de composition, comme spécifié par la valeur de dwIndex.
[in] dwCompLen
Taille, en octets, de la mémoire tampon d’informations pour la chaîne de composition, même si SCS_SETSTR est spécifié et que la mémoire tampon contient une chaîne Unicode.
[in, optional] lpRead
Pointeur vers une mémoire tampon contenant les informations à définir pour la chaîne de lecture, comme spécifié par la valeur de dwIndex. L’application peut définir ce paramètre sur NULL.
[in] dwReadLen
Taille, en octets, de la mémoire tampon d’informations pour la chaîne de lecture, même si SCS_SETSTR est spécifié et que la mémoire tampon contient une chaîne Unicode.
Valeur de retour
Retourne une valeur différente de zéro si elle réussit ou 0 sinon.
Remarques
L’application peut définir lpComp, lpRead, ou les deux. Si l’application ne spécifie pas de valeur pour lpComp, elle doit définir ce paramètre sur NULL et définir dwCompLen sur 0.
Lorsque l’application change d’attributs, tous les caractères d’une clause doivent avoir le même attribut. Les caractères convertis doivent avoir l’attribut ATTR_CONVERTED ou ATTR_TARGET_CONVERTED. Les caractères non convertis doivent avoir l’attribut ATTR_INPUT ou ATTR_TARGET_NOTCONVERTED.
Lorsque l’application modifie les informations de clause, elle ne peut modifier que la clause cible, ce qui affecte simplement une limite à la fois. La clause cible a l’attribut ATTR_TARGET_CONVERTED ou ATTR_TARGET_NOTCONVERTED.
Pour plus d’informations sur les attributs (valeurs ATTR_*), consultez chaîne de composition.
Lorsque l’IME termine les modifications, il envoie un message WM_IME_COMPOSITION à l’application pour l’informer des modifications.
Windows Me/98, Windows 2000, Windows XP : les valeurs SCS_*CONVERTSTRING sont utilisées pour la conversion. Ils ne peuvent être utilisés que pour un IME qui a la propriété SCS_CAP_SETRECONVERTSTRING. L’application utilise ces valeurs comme suit :
- Appelez ImmSetCompositionString avec SCS_QUERYRECONVERTSTRING, afin que l’IME ajuste la structure RECONVERTSTRING pour la conversion.
- Appelez ImmSetCompositionString avec SCS_SETRECONVERTSTRING, afin que l’IME génère une nouvelle chaîne de composition. Après cela, lpComp et lpRead indiquent une structure RECONVERTSTRING qui contient la composition et la chaîne de lecture mises à jour. Utilisez la valeur de lpRead uniquement lorsque l’IME sélectionné a SCS_CAP_MAKEREAD défini.
Note
L’en-tête imm.h définit ImmSetCompositionString en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement], prise en charge linguistique de l’Asie de l’Est installée. |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | imm.h (include Immdev.h, Windows.h) |
bibliothèque | Imm32.lib |
DLL | Imm32.dll |
Voir aussi
du gestionnaire de méthodes d’entrée
fonctions Input Method Manager