Problème d'affichage du symbole Euro € (AltGr+E) - résolu ?

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Problème d'affichage du symbole Euro € (AltGr+E) - résolu ?

Message par cage »

Bonsoir a tous,

Je rencontre un petit soucis pour faire apparaitre le symbole Euro € dans les menus d'une application qui fait 8095 lignes, indiqué par le compilateur.

Les menus sont très chargés (+ de mille menus).

Le symbole Euro est remplacé par un espace alors que si j'utilise les symboles dollar $ ou Livre £, ils sont bien affichés.

J'ai essayé avec plein de symboles exotiques, ils s'affichent tous correctement.

Je n'ai pas réussi a créer une application qui démontre la chose, mais le problème est bien là.

Avez-vous déjà rencontré ce soucis ?

Une idée du pourquoi de la chose.

Merci,
cage
Dernière modification par cage le sam. 15/juil./2023 8:45, modifié 1 fois.
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2197
Inscription : sam. 08/févr./2014 15:19

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par Marc56 »

Bonjour,

Le truc de base ? Fonte qui ne contient pas le symbole € ?

Ex: Courier ne contient pas €, mais Courier New oui

PS. 1000 menus ?
:wink:
Bmld76
Messages : 116
Inscription : dim. 09/janv./2022 12:47

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par Bmld76 »

Bonjour,

Sur MacOs, J'utilise le code € sans difficulté, donne un morceaux de code pour tester.
_____________________________________________________________
IMAC 21.5 2012 Core I5 - 2.70 Ghz. 16 GB NVIDIA GeForce GT 640M 512 Mo. MacOs OCPL Sonoma 14.3
MacBook Air M1 - 8Go - Sonoma 14.5

PureBasic 6.11 MacOS
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par cage »

Bonjour,
@ Bmld76: Je n'arrive pas a reproduire le problème dans un code exemple.

@Marc56: Je pensais que tu avais mis le doigt sur le problème, mais non.
Je ne modifie pas la fonte par défaut de l'application, alors ça devrait fonctionner.
Petite question, comment savoir quelle fonte est utilisée par les menus de l'application et comment la modifier ?
Je précise que si je crée une application toute simple avec un menu, le symbole Euro s'affiche bien.
Donc, par défaut, PB se lance avec une fonte qui accepte le symbole Euro.

Dans l'application en question, j'ai environ 9000 menus.
Cette application liste entre autre chaque nom de série disponible et les affiche dans des sous menus correspondants a la première lettre du titre.
Une image est plus parlante qu'un grand discours.
La playlist affichée date un peu et me sert a peaufiner l'application.
cage
Image

Image

Image
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2197
Inscription : sam. 08/févr./2014 15:19

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par Marc56 »

Hello,

J'ai envisagé que ce soit #PB_Menu_ModernLook qui pose un problème, mais non, € s'affiche bien.
Tu créé des 9000 menus à l'avance ou dynamiquement ?
Si tu les créé tous à l'avance il y a peut-être un problème de mémoire ?

PS. On peut changer la fonte par défaut par exemple avec:

Code : Tout sélectionner

SetGadgetFont(#PB_Default, FontID(LoadFont(#PB_Any, "Consolas", 10)))
Mais ça ne change pas la fonte des menus. :|
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par cage »

Tous les menus sont créés dynamiquement car je ne sais pas les créer a l'avance.
J'utilise une procédure pour créer les menus, ainsi, si je change de playlist, je rappelle la procédure pour reconstruire le menu.
Un bout du code que j'utilise

Code : Tout sélectionner

#WinApp = 60

Enumeration Menus
  #MenuApp
  #MenuPopup
  #MenuTray
EndEnumeration

Procedure construire_application_main_menu()
  If IsMenu(#MenuApp)
    FreeMenu(#MenuApp)
  EndIf
  
  If CreateImageMenu(#MenuApp, WindowID(#WinApp), #PB_Menu_ModernLook)
    ; Crétion des menus dynamiquement
    ; Lecture des Map (NewMap) et des List (NewList) créées lors du parsing de la playlist concernée
  EndIf
EndProcedure

Procedure construire_application_aide()
EndProcedure

Procedure construire_application_interface()
EndProcedure

Procedure construire_application_tray_menu()
EndProcedure
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par boddhi »

Salut,
cage a écrit : Je ne modifie pas la fonte par défaut de l'application, alors ça devrait fonctionner.
La fonte par défaut sous Win10 (version indiquée dans ta signature) est SEGOE UI, laquelle gère les caractères UNICODE dont la valeur de codage n'excède pas 65 535. Le symbole € a, lui, une valeur de 8364.
As-tu essayé la séquence "ALT GR + E" (dans un stringgadget créé dans ta fenêtre pour l'occasion, par exemple) ou la fonction Chr(8364) pour voir si le symbole € s'affichait ou non ?

Code : Tout sélectionner

OpenWindow(0,100,100,200,200,"Test €",#PB_Window_SystemMenu)
StringGadget(0,20,20,160,24,"€"+Chr(8364))
CreateMenu(0,WindowID(0))
MenuTitle("Test")
MenuItem(0,"Sous-menu 1 : €")
MenuItem(1,"Sous-menu 2 : "+Chr(8364))
Repeat
Until WaitWindowEvent()=#PB_Event_CloseWindow
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par cage »

@boddhi:
J'utilisais bien "ALT GR + E" et le symbole Euro apparaissait bien dans le code mais pas dans l'application.
Je viens d'essayer Chr(8364), et miracle (je suis né pas loin de Lourdes) le symbole Euro apparait bien dans les menus.
Il doit bien y avoir une explication au phénomène, mais je ne vois pas bien lequel.
Un grand merci a toi d'avoir trouvé une/la solution.
cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par boddhi »

cage a écrit : J'utilisais bien "ALT GR + E" et le symbole Euro apparaissait bien dans le code mais pas dans l'application.
As-tu essayé mon code ? Si oui, est-ce que tous les € s'affichent correctement (et dans le stringgadget et dans les menus) et as-tu essayé la combinaison de touches dans le stringgadget ?
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par cage »

Ton code de test fonctionne parfaitement et le symbole Euro est bien affiché dans les 2 menus et dans le stringgadget.
Si je tape "ALT GR + E" dans le stringgadget, le symbole Euro s'affiche bien.

Je me cite:
Je précise que si je crée une application toute simple avec un menu, le symbole Euro s'affiche bien.
Donc, par défaut, PB se lance avec une fonte qui accepte le symbole Euro.
Pour moi, le problème viendrait de la taille du menu et/ou du fait qu'il est créé de manière dynamique.

Dans tous les cas, l'utilisation de Chr(8364) règle le problème et je t'en remercie.
cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par boddhi »

Very strange comme diraient nos amis anglophones.

Taille ou création dynamique du menu, en théorie, je ne vois pas ce qui empêcherait l'utilisation de ce caractère...
As-tu fait le test avec un autre caractère du même style ? Genre "•" (ALT + 7 - Chr(8226))

Note bienveillante : Si tu considères que ton pb est résolu, n'hésite pas à l'indiquer dans le titre de ton 1er post :wink:
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Problème d'affichage du symbole Euro € (AltGr+E)

Message par cage »

Vraiment très étrange, je confirme.
As-tu fait le test avec un autre caractère du même style ? Genre "•" (ALT + 7 - Chr(8226))
ALT + 7 affiche bien "•" dans le code mais pas dans les menus.
Par contre, Chr(8226) affiche bien le "•" dans les menus.
Je fais marquer résolu mon premier post malgré le fait que la source du problème reste inconnue.
Encore merci a toi.
cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Problème d'affichage du symbole Euro € (AltGr+E) - résolu ?

Message par boddhi »

Tu peux poster juste la ligne de code qui créé ton item de menu ? Histoire de voir comment tu construis ta chaîne de caractères...
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Problème d'affichage du symbole Euro € (AltGr+E) - résolu ?

Message par cage »

Code : Tout sélectionner

Global Euro$ = Chr(8364)

If CreateImageMenu(#MenuApp, WindowID(#WinApp), #PB_Menu_ModernLook)
  OpenSubMenu("Utiliser le fournisseur "+Euro$, IconEuro) ; fonctionne
  OpenSubMenu("Utiliser le fournisseur €", IconEuro) ; ne fonctionne pas
  CloseSubMenu()
EndIf
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2197
Inscription : sam. 08/févr./2014 15:19

Re: Problème d'affichage du symbole Euro € (AltGr+E) - résolu ?

Message par Marc56 »

Avec ça (exemple complet), j'ai bien les deux signes €
PB 6.02 LTS Windows 10 x64 compilateur ASM ou C

Code : Tout sélectionner

Global Euro$ = Chr(8364)

OpenWindow(0, 0, 0, 300, 300, "", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)

If CreateImageMenu(1, WindowID(0), #PB_Menu_ModernLook)
    MenuTitle("Test")
    OpenSubMenu("Utiliser le fournisseur " + Euro$, IconEuro) ; fonctionne
    OpenSubMenu("Utiliser le fournisseur €", IconEuro)        ; ne fonctionne pas
    CloseSubMenu()
EndIf

Repeat : Until WaitWindowEvent(0) = #PB_Event_CloseWindow 
Répondre