Je voudrais utiliser un CDateTimeCtrl
pour permettre à l'utilisateur de sélectionner une date non-week-end. Ainsi, si l'utilisateur incrémente le jour (via une pression de touche) - et le jour résultant se trouve à tomber sur un week-end - alors le contrôle devrait sauter au lundi suivant (ne laissez pas les questions au sujet des changements de mois vous distraire, ce n'est pas pertinent).CDateTimeCtrl - la prévention du changement « de mise au point » lors de la mise jour
Habituellement, ce n'est pas un problème: lorsque je gère la notification DTN_DATETIMECHANGE
, je peux vérifier la nouvelle date/heure et si elle se révèle être un week-end, je peux appeler SetTime
sur le contrôle pour mettre à jour la date. Cependant, si je mets le style à DTS_SHOWNONE
, cet appel à SetTime
provoque le contrôle de déplacer l'entrée « focus » (terme utilisé vaguement) à la case « none », par exemple loin du champ de la journée. Cela empêche l'utilisateur d'utiliser l'entrée du clavier pour continuer à incrémenter la date à moins qu'ils utilisent ensuite la flèche droite pour réinitialiser le « focus », qui est juste méchant.
Je voudrais cher éviter ce changement de mise au point de se produire. Est-ce même possible?
semble fonctionner. Je suis sûr que je peux le généraliser pour tous les domaines. Bonne réponse. – WalderFrey