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
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 »

@cage

Ceci n'explique peut-être pas cela et je ne sais pas si c'est une coquille de copie, mais il te manque un MenuTitle() après ton CreateImageMenu().
Comme le (dé)montre l'exemple de Marc, c'est impératif pour pouvoir ensuite créer des items et/ou sous-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) - résolu ?

Message par cage »

@Marc56:

C'est juste un oubli dans le code mis en exemple, le code MenuTitle("Fichier") est bien présent. Voir copie d'écran de l'application.

Je re-confirme que dans une application de test, tout est normal, sauf que dans la vraie application, ce :twisted: de symbole Euro ne s'affiche pas.
■ 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 »

Il ne reste plus qu'à faire du pas-à-pas avec affichage des variables.
Note: On a aussi des comportements bizarres dans un code dès qu'on remplace certaines commandes standard par leur appel API direct (dans l'espoir parfois de gagner quelques ms). Donc commencer aussi par isoler les fonctions exotiques.
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 »

Pas d'appel aux API dans la construction du menu, pas de fonctions exotiques mais un codage complexe suite a la lecture d'une playlist.m3u et mise en Map ou en List de toutes les informations pour pouvoir créer les menus.
Même avec une playlist vide, le problème existe toujours.
A part ça, l'application fonctionne très bien, donc je crois que je vais en rester là pour l'instant.

Marc56 et boddhi, merci pour votre aide si précieuse.

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
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 »

Une dernière chose: tu as testé différents encodages du fichier .m3u ?
Normalement il faut qu'il soit en Utf-8 (pour les listes récentes)
Donc toutes les fonctions qui le lisent doivent s'y adapter.
ReadStringFormat()
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 »

J'ai vérifié le codage de mes playlists avec Notepad++, c'est bien de l'UTF-8

La playlist est récupérée grâce a la fonction ReceiveHTTPFile(URL$, PLAYLIST.s) qui ne permet pas de préciser le codage souhaité.
Donc UTF-8 doit être le défaut.

Voici le code qui me permet de récupérer la playlist en fonction du fournisseur choisi.

Code : Tout sélectionner

If fileExist(PLAYLIST.s)
  SetFileAttributes(PLAYLIST.s, #PB_FileSystem_Normal)
EndIf

URL$ = urlPlaylist$ ; <-- chaque playlist a sa propre adresse internet liée au fournisseur

httprequest = HTTPRequest(#PB_HTTP_Get, URL$, #Empty$, #PB_HTTP_HeadersOnly)

If httprequest
  httpstatuscode$ = HTTPInfo(httprequest, #PB_HTTP_StatusCode)
  FinishHTTP(httprequest)
  If httpstatuscode$ = "200" Or httpstatuscode$ = "302"
    If FileSize(PLAYLIST.s) > 0
      CopyFile(PLAYLIST.s, PLAYLIST.s+".bak")
    EndIf
    If ReceiveHTTPFile(URL$, PLAYLIST.s)
      If FileSize(PLAYLIST.s) > 0
        ; nothing to do
      Else
        CopyFile(PLAYLIST.s+".bak", PLAYLIST.s)
      EndIf
    Else
      CopyFile(PLAYLIST.s+".bak", PLAYLIST.s)
    EndIf
  EndIf
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
Répondre