j'ai un souci que je n'arrive pas résoudre lorsque j'utilise la fonction replace pour remplacer un la " , " par un " . " cela fonctionne mais lorsque je lance mon appli lorsque je rentre ma saisi (dans une textbox)et j'utilise le point mais saisi ce met automatique ment a gauche
exemple je veux écrire 15.1
si je tape cette valeur sans m’arrêter cela donnera 115.
j'ai réussi a intégré le key press correctement normalement
l'erreur suivante maintenant est sur le mot 'keyAscii"
il faut que je la déclare apparemment.
mais je n'ai pas réussi
mon key press est la fin de mon code.
help^^
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 7 sept. 2019 à 12:21
Tu es en VB.NET pur ou en interaction avec une form VB6 ou VBA ?
Est-ce une conversion VB6 -> VB.NET par l'assistant ?
La déclaration de l'événement est vraiment suspecte.
Utilises la déclaration de l'événement générée par Visual Studio et évites les repompages de code sans savoir d'où ça vient et sans comprendre le fonctionnement du code.
Oui donc je me suis pas tromper j'ai bien utilisé le langage vb net pour mon appli
au niveau du code j'en suis au début, et l'appli ne sera pas quelque chose de complexe, seulement des calcule de condition de coupe.
elle fonctionne quand je la test mes calcule ce font correctement, le seul souci que j'ai c'est que je veut utilisé le "." du pavé numérique et non la ","
en faisant des recherche j'ai trouvé 2 solution
1) la fonction replace
VC.Text = Replace(VC.Text, ".", ",")
qui marche mais lors de ma saisi au pavé numérique quand je tape le "." cela me renvoi a gauche de la saisi, et donc je doit cliqué pour remettre la saisi au bonne endroit.
.
2) j'ai vu des utilisation evenement ( si je dit pas de bétise) avec "keypress"
Private Sub VC_KeyPress(sender As Object, e As KeyPressEventArgs) Handles VC.KeyPress
If KeyAscii = 46 Then KeyAscii = 44
End Sub
que je n'arrive pas a utiliser.
et me dit que: "keyAscii n'est pas déclarer.il peut être inaccessible en raison de son niveau de protection."
si besoin de plus de précision n'hésité pas!
mais je suis toujours dans l'impasse...
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 8 sept. 2019 à 11:36
As-tu suivi un tutoriel ?
Car, ce message d'erreur t'indique juste que KeyAscii n'est pas déclaré.
Ce qui est normal, regarde dans le paramètre "e".
Whismeril
Messages postés18416Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 7 juin 2023624 8 sept. 2019 à 11:56
Bonjour Adram
tu fais l'erreur de nombreux autodidactes (j'ai fait la même autrefois), tu penses qu'en bidouillant ça va finir par marcher.
Dans une certaine mesure, ça peut être vrai, mais on finit toujours par buter plus ou moins rudement sur un obstacle, par ce qu'on n'a pas appris et/ou compris les bases du développement.
Alors oui, aujourd'hui sur le net, on trouve souvent une solution (ce n'était pas le cas quand j'ai débuté). Mais le problème avec VB, c'est qu'il y en a pleins de version pas forcément compatibles entre elles, et le fait de manquer de bases n'aide pas à comprendre le pourquoi du comment.
Bien sûr, Henri, VB95 ou moi sommes capable de te donner le bout de code que tu cherches, seulement quand tu seras face à quelque chose de plus compliqué, que feras-tu?
Le meilleur conseil que je puisse te donner est de suivre de A à Z, un ou deux cours de VB.Net.
Ce cours http://plasserre.developpez.com/cours/vb-net/ est très bien pour débuter, même s'il prend la programmation objet pour un effet de mode alors que c'est l'essence des langages .Net. Celui d'openclassroom est moins accessible (et par un moment quelques exemples buguaient, j'espère que depuis le temps ils ont été corrigés) mais explique l'objet pour ce qu'il est.
Aucuns de ces 2 cours ne fera de toi un codeur hors pair, mais il te permettront de comprendre les réponses que l'on te donne sur un forum, ou d'avoir le recul pour te dire que ce que tu trouves sur le net ne colle pas avec la version dans laquelle tu codes.
Bonjours merci pour vos réponse !
j'ai réussi a trouvé la solution
il fallait juste que je déclare dans un texte box un événement de "key press" et dans cette éventement le code permettant de changer le.par la ,
Private Sub VC_KeyPress(sender As Object, e As KeyPressEventArgs) Handles VC.KeyPress
If e.KeyChar = "." Then e.KeyChar = CType(",", Char)
End Sub
pour la suite je vais suivre les conseil de whismeril, car le reste sera un peu plus complexe et je ne serais pas comment expliqué les problème a venir.