Hola a todos/as,
He hecho una aplicación Visual C++ basada en diálogo que
emplea un control CMonthCalCtrl que me está dando algún
problema.
En modo debug funciona perfectamente. Pero en modo release
ocurre algo extraño: cuando selecciono explícitamente un
día (con el ratón), la fecha que asume seleccionada es
otra distinta, un determinado número de días más tarde.
Por ejemplo, 37 días (error constante): si selecciono el
10 de diciembre, el MessageBox de mi aplicación con la
fecha dice 16 de enero, y cuando pulso 'Aceptar' en el
MessageBox la selección del calendario se va al 16 de
enero. Si ahora hiciese aparecer de nuevo el MessageBox
pulsando un botón del diálogo (estando ahora seleccionado
el 16 de enero), me diría otra vez 16 de enero, sin error,
ya que no he seleccionado ese día con el ratón sino que se
ha seleccionado solo. Lo mismo si avanzo de mes y queda
seleccionado el 16 de febrero, en ese caso tampoco hay
error, solamente cuando selecciono el día pulsando con el
ratón. Si cierro la aplicación y la vuelvo a abrir, ahora
el error es un número distinto de días, pero que se
mantendrá constante hasta que lo cierre de nuevo.
¿Alguna idea? Gracias y un saludo,
Enrique
////////////////////////////////////////////////////////
Hello everybody,
I am developping a dialog based Visual C++ application
using a CMonthCalCtrl control which is causing me some
trouble.
In debug mode it works fine. But something strange happens
in release mode: when explicitly selecting a day (by mouse
clicking), the assumed date is a different one, some days
later. For example, 37 days later (constant error): if
mouse clicking on december 10th, the date displaying
MessageBox in my program shows january 16th, and when
pressing 'Accept' in the MessageBox the selection in the
calendar control moves to january 16th. If now I pressed a
button in the dialog so the MessageBox reappeared (with
january 16th now selected) it would show january 16th
again, this time with no error, since now the day was not
selected by mouse clicking but it moved there by itself.
The same applies if advancing month to february, selection
changes to february 16th and the MessageBox would commit
no error, only when the day is mouse clicked. When the
application is closed and restarted the error number of
days is different, though it will keep constant until the
program is closed again.
Any idea? Thanks and best regards,
Enrique
Leer las respuestas