Caractères unicode

Signaler
Messages postés
895
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
21 mars 2021
-
Messages postés
895
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
21 mars 2021
-
Bonjour,
Je voudrais utiliser quelques caractères spéciaux (flèche vers le bas, ...) dans une listbox.
La police de la listbox est Courier New.
Je trouve les caractères que je cherche dans la table des caractères par exemple U+2193.
Pour le faire apparaître dans la listbox j'utilise CHRW(&H2193)
J'obtiens un point d'interrogation.
Qu'est-ce que je fais mal ?

1 réponse

Messages postés
14785
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
18 avril 2021
154
VB6 n'est pas conseillé pour développé, il est largement obsolète.
Sa gestion de l'unicode date d'il y a plusieurs années et n'est plus suffisante actuellement.

Je te recommande plutôt de passer pas VB.NET ou C#.NET qui sont largement plus à jour et gèrent parfaitement l'unicode.
Messages postés
895
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
21 mars 2021
2
Merci mais vu l'ampleur du projet il ne m'est matériellement pas possible de changer de langage.

Ma question est : pourquoi VB6 affiche-t-il CHRW(&H2193) comme "?" ?
L'instruction comporte-t-elle une erreur ?
Comment afficher U+2193 dans une ListBox ?

Messages postés
14785
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
18 avril 2021
154
Le fait est que VB6 ne gère pas pleinement l'unicode, il y a même des DLL spéciales (non incluses) pour afficher en langue arabe par exemple.
Je ne pense pas que ça soit faisable de faire ce que tu veux sans faire un hack (dont je ne connais même pas l'existence).

Si en faisant cet essai :
MsgBox CHRW(&H2193)

Si ça ne passe pas, aucune chance que tu y arrive facilement.
Messages postés
895
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
21 mars 2021
2
Non, ça donne un "?".
Tant pis, au lieu des flèches haut et bas je vais utiliser + et -.