Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
824 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  virgule -> point [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

virgule -> point [résolu]

n°430347
amsterdam
Posté le 17-06-2003 à 13:02:21  profilanswer
 

Voilà je cherche à pouvoir utiliser le "." du pavé numérique à la place de la virgule sans me faire jeter par le compilo.
Je peut toujours remplacer le "." par une virgule après saisie mais il existe peut être une meilleure soluce, non ?
 
ps: je n'ai rien trouvé dans l'aide de delphi, mais ça ne prouve rien. :d
 
Merci d'avance. :)


Message édité par amsterdam le 17-06-2003 à 15:05:34
mood
Publicité
Posté le 17-06-2003 à 13:02:21  profilanswer
 

n°430359
skeye
Posté le 17-06-2003 à 13:14:47  profilanswer
 

Comprends pas.
Tu veux faire quoi exactement? Que dans ton appli quand tu tapes'.' ca affiche ','?


---------------
Can't buy what I want because it's free -
n°430367
amsterdam
Posté le 17-06-2003 à 13:18:57  profilanswer
 

A l'heure actuelle si au pavé num je saisi par ex: 12.4 le compilo me jette alors que si je tape 12,4 pas de prob.

n°430378
skeye
Posté le 17-06-2003 à 13:22:23  profilanswer
 

amsterdam a écrit :

A l'heure actuelle si au pavé num je saisi par ex: 12.4 le compilo me jette alors que si je tape 12,4 pas de prob.


Ma première idée serait de faire la modif tout seul après coup...mais je connais quasiment pas Delphi... [:ddr555]


---------------
Can't buy what I want because it's free -
n°430385
amsterdam
Posté le 17-06-2003 à 13:26:17  profilanswer
 

Si ma mémoire est bonne en VB il existe la fonction replace, par contre pour DELPHI je n'ai pas trouvé.  :(  
 
Sinon tant pis je vais le faire à la main mais c'est plus long(lourd).

n°430454
amsterdam
Posté le 17-06-2003 à 13:57:20  profilanswer
 

J'essaie ceci:
 


pospoint := strpos(s, txtfrancs);


 
Et le compilo me sort:


[Erreur] Unit1.pas(37): Types incompatibles : 'TEdit' et 'PChar'


 
QQun voit il ou est mon erreur ?

n°430457
skeye
Posté le 17-06-2003 à 13:59:28  profilanswer
 

amsterdam a écrit :

J'essaie ceci:
 


pospoint := strpos(s, txtfrancs);


 
Et le compilo me sort:


[Erreur] Unit1.pas(37): Types incompatibles : 'TEdit' et 'PChar'


 
QQun voit il ou est mon erreur ?


Au hasard, tu ne fournis ps le bon type à la fction strpos?
Ou alors le résultat de strpos n'est du même type que pospoint...
Ca manque de précisions ton code là...


---------------
Can't buy what I want because it's free -
n°430475
amsterdam
Posté le 17-06-2003 à 14:06:43  profilanswer
 

Je me doute bien que c'est un problème de type.
 
Apparement le strpos renvoit un PChar qui est utilisé pour les chaines à 0 terminal alors que je travaille sur des chaines "normales".
Mais je ne trouve rien pour remplacer strpos. :/


Message édité par amsterdam le 17-06-2003 à 14:07:00
n°430513
amsterdam
Posté le 17-06-2003 à 14:22:59  profilanswer
 

Je vient de trouver la fonction stringreplace mais je n'y arrive toujours pas.
 


euros, francs, resultat : real;
 pospoint : integer;
 s : string ;
 
 s := '.';
 pospoint := stringreplace(s, txtfrancs);



[Erreur] Unit1.pas(37): Types incompatibles : 'String' et 'TEdit'


 
Pas beaucoup plus avancé quoi.  :cry:

n°430559
taureau
Posté le 17-06-2003 à 14:35:22  profilanswer
 

regarde dans l'aide en ligne du coté de DecimalSeparator
 
sinon pour ton problème c normal puisque tu passes un TEdit fait donc txtfrancs.text

mood
Publicité
Posté le 17-06-2003 à 14:35:22  profilanswer
 

n°430568
antp
Super Administrateur
Champion des excuses bidons
Posté le 17-06-2003 à 14:37:47  profilanswer
 

amsterdam a écrit :


Mais je ne trouve rien pour remplacer strpos. :/


 
Pos ? :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°430570
amsterdam
Posté le 17-06-2003 à 14:38:41  profilanswer
 

Et une erreur débile une. :d
Bon maintenant il me met:
 


[Erreur] Unit1.pas(38): Pas assez de paramètres originaux


 
Sinon je vait voir pour décimal bidule. :)

n°430572
antp
Super Administrateur
Champion des excuses bidons
Posté le 17-06-2003 à 14:39:05  profilanswer
 

Si c'est pour les FloatToStr et StrToFloat, je vois pas l'intérêt de forcer le point : Delphi utilise le symbole défini dans les options régionales de Windows.
Perso ça me gonfle les applications qui veulent des "." plutôt que la "," comme je l'ai définie, parce que sur mon clavier sur le pavé numérique j'ai une "," ...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°430574
antp
Super Administrateur
Champion des excuses bidons
Posté le 17-06-2003 à 14:39:38  profilanswer
 

amsterdam a écrit :

Et une erreur débile une. :d
Bon maintenant il me met:
 


[Erreur] Unit1.pas(38): Pas assez de paramètres originaux



 
dest := StringReplace(source, old, new, [rfReplaceAll]);


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°430593
amsterdam
Posté le 17-06-2003 à 14:47:07  profilanswer
 

Donc si je comprend bien je suis censé faire ceci:


pospoint := stringreplace(txtfrancs.text, '.', ',');


Là il me sort:


[Erreur] Unit1.pas(38): Pas assez de paramètres originaux


:/

n°430605
antp
Super Administrateur
Champion des excuses bidons
Posté le 17-06-2003 à 14:51:51  profilanswer
 

il manque le 4e param : [rfReplaceAll]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°430616
amsterdam
Posté le 17-06-2003 à 14:56:21  profilanswer
 


Si je le met j'ai droit à:


[Erreur] Unit1.pas(38): Types incompatibles : 'Integer' et 'String'


Message édité par amsterdam le 17-06-2003 à 14:56:41
n°430630
amsterdam
Posté le 17-06-2003 à 15:00:44  profilanswer
 

C'est bon ça passe, il suffisait de changer le type de la variable pospoint.

n°430641
amsterdam
Posté le 17-06-2003 à 15:04:19  profilanswer
 

C'est bon ça fonctionne.  :bounce:  
 
Mais je vous préviens vous n'avez pas fini de me supporter.  :lol:
 
Merci aux participants.  :hello:


Message édité par amsterdam le 17-06-2003 à 15:04:54

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  virgule -> point [résolu]

 

Sujets relatifs
Conversion [résolu][Résolu]disquette de boot
[PHP] Je ne trouve pas l'erreur ... [Résolu][Java] Librairies tierces supportant le HTML 4.0 ? [résolu en partie]
2 chiffres apres la virgule dans un Editruntime.exec() d'une fonction dans un autre répertoire ... [Résolu]
[Flash] Envoyer un E-mail ? [problème résolu]Algo de génération de dégrade [RESOLU]
[html/css] caler une ligne de texte tout en haut de la page ? [résolu]impossible de centrer [résolu]
Plus de sujets relatifs à : virgule -> point [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR