Comment interdire/autoriser l'écriture dans une TextBox?
LoKe74150
Messages postés5Date d'inscriptionmercredi 26 mai 2010StatutMembreDernière intervention 7 juin 2010
-
7 juin 2010 à 18:21
tidjool
Messages postés102Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention16 août 2012
-
6 juil. 2010 à 12:15
Bonjour,
en tant que débutant je développe une petite interface pour automatiser des outils commerciaux et j'aimerais vos conseils pour les points suivants:
- Comment faire pour que mon programme interdise de mettre une mauvaise date dans une masked textbox (antérieure a la date du jour ou non valide genre 32/21/2100)?
- Comment interdire la modification du texte dans une textbox (je fais un choix dans une combobox qui se répete ensuite dans une textbox qu'on ne peut pas changer, si je choisi "autre" je peux entrer moi meme le texte dans cette meme TextBox)?
- Comment ne pas faire apparaitre de choix par defaut dans une combobox mais interdire un choix nul ou l'écriture manuelle dans celle-ci?
raffika
Messages postés269Date d'inscriptiondimanche 31 mai 2009StatutMembreDernière intervention12 mars 2011 7 juin 2010 à 18:39
Salut,
pour interdire une date fausse dans un textbox
il n'y a pas à ma connaissance de méthode toute faite
ou de controle tout fait pour ça...
Tu dois toi même programmer pour obtenir ce résultat.
Pour interdire la modification du texte d'un textbox,
fouille un peu dans les propriétés du textbox,
il n'y en as pas beaucoup et elles sont toutes décrites,
il y en a une juste pour ce que tu veux que tu peux mettre
à true ou false ;)
Pour le combobox, met-le en DropDownList.
meriem123435
Messages postés4Date d'inscriptiondimanche 9 mai 2010StatutMembreDernière intervention19 décembre 2010 7 juin 2010 à 19:24
Bonjour,
Tout ce que je vais te dire là marche sur VB6 sur les autres versions j'en sais rien, je n'ai programmé que sur VB6
-Bref, il y'a une fonction prédéfinie sur VB qui te donne la date d'aujourd'hui automatiquement c'est la fonction CStr(Date), tu peux l'affecter à ton textbox ou comparer avec à toi voir ce que tu veux faire dans ton programme ...
-Pour interdire la modification dans un textbox tu vas dans les propriétés de ce text et tu mets enabled=false ou bien dans ton code tu mets text1.enabled=false
Mais si j'ai bien compris si on choisis "autre" dans la combolist dans ce cas là on peut modifier, si c'est le cas tu testes sur le choix que tu vas faire dans ta combobox si tu connais l'emplacement de "autre" par exemple dans ta combox tu affectes à une var l'emplacement du choix de l'utilisateur, par exemple:
autre se trouve par exemple au 6ème emplacement dans ta combobox et ben tu fais
var=combo1.listindex// listindex nous permet de connaitre la position de l'élément sélectionné dans ta combobox
if var <>6 then // puis tu testes suivant les cas
text1.enabled=false// ici tu ne peux pas écrire dans textbox
.......
else
text1.enabled=true// ici tu peux écrire dans ton textbox
end if
-Pour ta combobox tu vas dans ses propriétés et dans Style tu choisis DropDownList
LoKe74150
Messages postés5Date d'inscriptionmercredi 26 mai 2010StatutMembreDernière intervention 7 juin 2010 7 juin 2010 à 19:31
Nikel pour DropDownList, pour interdire l'écriture de la TextBox je pense que ce sera l'option ReadOnly ou meme Enable, et le bout de code sera tres bien aussi pour l'option Autre, reste a voir comment je peux la manipuler en code...merci a vous deux
Par contre pour ce qui est de la date je m'imaginais bien que ce serait du code mais c'est justement la que je ne sais pas comment faire.
J'ai deja trouve la fonction qui me donne la date du jour mais ce que je veux interdire c'est que la date de livraison soit non valide...
J'imagine un "si" avec un messagebox qui dit que la date est mauvaise si on sort du controle MaskedBox, mais je ne sais pas comment vérifier la double condition:
- date de livraison > date du jour
- date de livraison valide (et pas 31 fevrier 2050)
raffika
Messages postés269Date d'inscriptiondimanche 31 mai 2009StatutMembreDernière intervention12 mars 2011 7 juin 2010 à 20:07
Salut,
quelques infos sur l'utilisation des dates
en vb.net,
date du jour :
DateAndTime.Today
créer une date pour comparer avec une autre :
Dim mydate As Date
mydate = new date(2010,6,7) ''par exemple
ensuite tu pourras comparer la
date du jour avec celle reçue
ou avec une autre que tu aura crée
il faudra penser aussi à vérifier
que le mois ne dépasse pas 12
comme le jour qui ne doit pas dépasser
31 ou selon le mois,
pour février, vérifier
si l'année est bissextile :
Date.IsLeapYear("2010")
renvoie false car 2010 n'est pas
sinon ça renverrai true
Voilà a+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Calade
Messages postés1207Date d'inscriptiondimanche 20 avril 2003StatutMembreDernière intervention 4 juin 201610 8 juin 2010 à 08:46
Bonjour,
EN VB6 il existe un contrôle calendrier (ou DTPicker, je ne sais plus exactement) qui te permet de sélectionner une date sans avoir à la saisir. Tu es déjà délesté de la validité de ta date au sens calendaire du terme.
Te reste plus qu'à tester si elle est inférieure ou non à la date du jour.
tidjool
Messages postés102Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention16 août 2012 6 juil. 2010 à 12:15
Bonjour,
En ce qui concerne la permission de saisi quand la valeur de la combo est "autre", je pense qu'il faut faire un test sur le contenu de celle-ci (après l'évènement combobox.textchange)
Exemple :
if combobox1.text ="autre" then
textbox1.readonly = false
else
textbox1.readonly = true
end if