In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Mascaras en TMaskEdit

Foro de Xailer profesional en español
Responder
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

Mascaras en TMaskEdit

Mensaje por Xevi »

En la 1.1 se ha "escacharrao" lo que funcionaba en la 1.0... las máscaras no
furulan correctamente.
Si probais por ej. la máscara de CCC 9999-9999-99-9999999999
Ej.: oMaskEdit1:Value := 12345678901234567890
Lo muestra correctamente 1234-5678-90-1234567890
Pero si modificamos el DC 90 por ej.... marcamos con el ratón los dos
dígitos "90" y cuando cambiamos su valor pone un - al final del valor y
desaparece el - entre el 0 y el 1...
Además si pretendemos "salvar" el valor,... oLabel1:cText :=
oMaskEdit1:Value ... contiene los - de máscara.
Otro detalle... si utilizamos el cambio de modo escritura
inserción/sobreescribir cuando está en sobreescribir "elimina" el carácter
de la derecha..
Hay que darle un repaso al TMaskEdit...
Un Saludo.
Xevi.
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9457
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Mascaras en TMaskEdit

Mensaje por ignacio »

Xevi,
Me temo que el error existía desde siempre, y me he tomado el tiempo de
retrotaer todo Xailer hasta la versión 1.0 y efectivamente también fallaba.
Espero que esté arreglado con el módulo que incluyo en este email.
Un saludo
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Xevi" <xevicomas@gmail.com> escribió en el mensaje
news:[email=454f2cfd@news.xailer.com...]454f2cfd@news.xailer.com...[/email]
> En la 1.1 se ha "escacharrao" lo que funcionaba en la 1.0... las máscaras
> no
> furulan correctamente.
>
> Si probais por ej. la máscara de CCC 9999-9999-99-9999999999
>
> Ej.: oMaskEdit1:Value := 12345678901234567890
> Lo muestra correctamente 1234-5678-90-1234567890
> Pero si modificamos el DC 90 por ej.... marcamos con el ratón los dos
> dígitos "90" y cuando cambiamos su valor pone un - al final del valor y
> desaparece el - entre el 0 y el 1...
> Además si pretendemos "salvar" el valor,... oLabel1:cText :=
> oMaskEdit1:Value ... contiene los - de máscara.
>
> Otro detalle... si utilizamos el cambio de modo escritura
> inserción/sobreescribir cuando está en sobreescribir "elimina" el carácter
> de la derecha..
>
> Hay que darle un repaso al TMaskEdit...
>
>
> Un Saludo.
> Xevi.
>
>


Attached files imaskedit.rar (4.6 KB)Â
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

Mascaras en TMaskEdit

Mensaje por Xevi »

Ignacio,
Juraría que en la 1.0 funcionaba bien, pero igual es mi lio mental...
Bien, con este Obj se soluciona mucho...
Dos detalles...
1... cuando queremos obtener el valor del MaskEdit... ¿no deberia de
devolver su valor real... sin la máscara???
Para ese menester está ::oMaskEdit:cText ¿no???
Así pues ::oMaskEdit:Value != ::oMaskEdit:cText...
2... cuando cambiamos de modo edición insertar/sobreescribir... no tienen
ningún efecto y NUNCA se sobreescribe. Para mi sería correcto cuando
trabajamos con alguna máscara no "insertar" entre caracteres, como cuando
trabajamos con un MaskEdit de tipo fecha.
Además, si cambiamos de modo edición insertar/sobreescribir e intentamos
cambiar dígitos entre máscaras, le pone un símbolo de la máscara al final
del texto.
Un Saludo,
Xevi.
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> ha escrit al missatge del grup
de discussió: 45506d0b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Xevi,
>
> Me temo que el error existía desde siempre, y me he tomado el tiempo de
> retrotaer todo Xailer hasta la versión 1.0 y efectivamente también
> fallaba.
>
> Espero que esté arreglado con el módulo que incluyo en este email.
>
> Un saludo
>
> --
> Ignacio Ortiz de Zúñiga
> http://www.xailer.com
> "Xevi" <xevicomas@gmail.com> escribió en el mensaje
> news:[email=454f2cfd@news.xailer.com...]454f2cfd@news.xailer.com...[/email]
>> En la 1.1 se ha "escacharrao" lo que funcionaba en la 1.0... las máscaras
>> no
>> furulan correctamente.
>>
>> Si probais por ej. la máscara de CCC 9999-9999-99-9999999999
>>
>> Ej.: oMaskEdit1:Value := 12345678901234567890
>> Lo muestra correctamente 1234-5678-90-1234567890
>> Pero si modificamos el DC 90 por ej.... marcamos con el ratón los dos
>> dígitos "90" y cuando cambiamos su valor pone un - al final del valor y
>> desaparece el - entre el 0 y el 1...
>> Además si pretendemos "salvar" el valor,... oLabel1:cText :=
>> oMaskEdit1:Value ... contiene los - de máscara.
>>
>> Otro detalle... si utilizamos el cambio de modo escritura
>> inserción/sobreescribir cuando está en sobreescribir "elimina" el
>> carácter
>> de la derecha..
>>
>> Hay que darle un repaso al TMaskEdit...
>>
>>
>> Un Saludo.
>> Xevi.
>>
>>
>
>
>
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

Mascaras en TMaskEdit

Mensaje por Xevi »

Ignacio,
El punto 2...
No consigo reproducir el efecto de ponerme un caracter de máscara más... lo
hace aleatoriamente cuando se "juega" con los dígitos entre máscaras, por lo
que no se con certeza cuando se produce.
Lo del efecto inserción/escritura si que se produce... y como he dicho me
parece el funcionamiento correcto cuando trabajamos en MaskEdits... ahora se
podría eliminar el "cambio" de cursor para no confundir al usuario... ¿no
crees???
Un Saludo,
Xevi.
"Xevi" <xevicomas@gmail.com> ha escrit al missatge del grup de discussió:
4550729a$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ignacio,
>
> Juraría que en la 1.0 funcionaba bien, pero igual es mi lio mental...
>
> Bien, con este Obj se soluciona mucho...
> Dos detalles...
> 1... cuando queremos obtener el valor del MaskEdit... ¿no deberia de
> devolver su valor real... sin la máscara???
> Para ese menester está ::oMaskEdit:cText ¿no???
> Así pues ::oMaskEdit:Value != ::oMaskEdit:cText...
>
> 2... cuando cambiamos de modo edición insertar/sobreescribir... no tienen
> ningún efecto y NUNCA se sobreescribe. Para mi sería correcto cuando
> trabajamos con alguna máscara no "insertar" entre caracteres, como cuando
> trabajamos con un MaskEdit de tipo fecha.
> Además, si cambiamos de modo edición insertar/sobreescribir e intentamos
> cambiar dígitos entre máscaras, le pone un símbolo de la máscara al final
> del texto.
>
>
>
> Un Saludo,
> Xevi.
>
>
> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> ha escrit al missatge del
> grup de discussió: 45506d0b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Xevi,
>>
>> Me temo que el error existía desde siempre, y me he tomado el tiempo de
>> retrotaer todo Xailer hasta la versión 1.0 y efectivamente también
>> fallaba.
>>
>> Espero que esté arreglado con el módulo que incluyo en este email.
>>
>> Un saludo
>>
>> --
>> Ignacio Ortiz de Zúñiga
>> http://www.xailer.com
>> "Xevi" <xevicomas@gmail.com> escribió en el mensaje
>> news:[email=454f2cfd@news.xailer.com...]454f2cfd@news.xailer.com...[/email]
>>> En la 1.1 se ha "escacharrao" lo que funcionaba en la 1.0... las
>>> máscaras no
>>> furulan correctamente.
>>>
>>> Si probais por ej. la máscara de CCC 9999-9999-99-9999999999
>>>
>>> Ej.: oMaskEdit1:Value := 12345678901234567890
>>> Lo muestra correctamente 1234-5678-90-1234567890
>>> Pero si modificamos el DC 90 por ej.... marcamos con el ratón los dos
>>> dígitos "90" y cuando cambiamos su valor pone un - al final del valor y
>>> desaparece el - entre el 0 y el 1...
>>> Además si pretendemos "salvar" el valor,... oLabel1:cText :=
>>> oMaskEdit1:Value ... contiene los - de máscara.
>>>
>>> Otro detalle... si utilizamos el cambio de modo escritura
>>> inserción/sobreescribir cuando está en sobreescribir "elimina" el
>>> carácter
>>> de la derecha..
>>>
>>> Hay que darle un repaso al TMaskEdit...
>>>
>>>
>>> Un Saludo.
>>> Xevi.
>>>
>>>
>>
>>
>>
>
>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9457
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Mascaras en TMaskEdit

Mensaje por ignacio »

Xevi,
1)
Si utilizar el picture @R debería devolverto sin la máscara, pero siempre
utilizando su propiedad Value, que entre otras cosas entiende de tipos. La
propiedad cText, es siempre de tipo caracter y muestra el texto realmente
existente en el control.
2)
No puede ser de otra forma, la máscara MARCA unas zonas de edición que no
tendrían sentido sin los espacios. Delphi sustituye los espacios por
'underscores' pero es igual.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Xevi" <xevicomas@gmail.com> escribió en el mensaje
news:4550729a$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ignacio,
>
> Juraría que en la 1.0 funcionaba bien, pero igual es mi lio mental...
>
> Bien, con este Obj se soluciona mucho...
> Dos detalles...
> 1... cuando queremos obtener el valor del MaskEdit... ¿no deberia de
> devolver su valor real... sin la máscara???
> Para ese menester está ::oMaskEdit:cText ¿no???
> Así pues ::oMaskEdit:Value != ::oMaskEdit:cText...
>
> 2... cuando cambiamos de modo edición insertar/sobreescribir... no tienen
> ningún efecto y NUNCA se sobreescribe. Para mi sería correcto cuando
> trabajamos con alguna máscara no "insertar" entre caracteres, como cuando
> trabajamos con un MaskEdit de tipo fecha.
> Además, si cambiamos de modo edición insertar/sobreescribir e intentamos
> cambiar dígitos entre máscaras, le pone un símbolo de la máscara al final
> del texto.
>
>
>
> Un Saludo,
> Xevi.
>
>
> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> ha escrit al missatge del
> grup de discussió: 45506d0b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Xevi,
>>
>> Me temo que el error existía desde siempre, y me he tomado el tiempo de
>> retrotaer todo Xailer hasta la versión 1.0 y efectivamente también
>> fallaba.
>>
>> Espero que esté arreglado con el módulo que incluyo en este email.
>>
>> Un saludo
>>
>> --
>> Ignacio Ortiz de Zúñiga
>> http://www.xailer.com
>> "Xevi" <xevicomas@gmail.com> escribió en el mensaje
>> news:[email=454f2cfd@news.xailer.com...]454f2cfd@news.xailer.com...[/email]
>>> En la 1.1 se ha "escacharrao" lo que funcionaba en la 1.0... las
>>> máscaras no
>>> furulan correctamente.
>>>
>>> Si probais por ej. la máscara de CCC 9999-9999-99-9999999999
>>>
>>> Ej.: oMaskEdit1:Value := 12345678901234567890
>>> Lo muestra correctamente 1234-5678-90-1234567890
>>> Pero si modificamos el DC 90 por ej.... marcamos con el ratón los dos
>>> dígitos "90" y cuando cambiamos su valor pone un - al final del valor y
>>> desaparece el - entre el 0 y el 1...
>>> Además si pretendemos "salvar" el valor,... oLabel1:cText :=
>>> oMaskEdit1:Value ... contiene los - de máscara.
>>>
>>> Otro detalle... si utilizamos el cambio de modo escritura
>>> inserción/sobreescribir cuando está en sobreescribir "elimina" el
>>> carácter
>>> de la derecha..
>>>
>>> Hay que darle un repaso al TMaskEdit...
>>>
>>>
>>> Un Saludo.
>>> Xevi.
>>>
>>>
>>
>>
>>
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

Mascaras en TMaskEdit

Mensaje por Xevi »

Ignacio,
Me queda claro.
Lo pondré a funcionar desde ya mismo con picture @R
Gracias.
Un Saludo,
Xevi.
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> ha escrit al missatge del grup
de discussió: 455076fd$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Xevi,
>
> 1)
>
> Si utilizar el picture @R debería devolverto sin la máscara, pero siempre
> utilizando su propiedad Value, que entre otras cosas entiende de tipos. La
> propiedad cText, es siempre de tipo caracter y muestra el texto realmente
> existente en el control.
>
> 2)
>
> No puede ser de otra forma, la máscara MARCA unas zonas de edición que no
> tendrían sentido sin los espacios. Delphi sustituye los espacios por
> 'underscores' pero es igual.
>
> Un saludo,
>
> --
> Ignacio Ortiz de Zúñiga
> http://www.xailer.com
> "Xevi" <xevicomas@gmail.com> escribió en el mensaje
> news:4550729a$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Ignacio,
>>
>> Juraría que en la 1.0 funcionaba bien, pero igual es mi lio mental...
>>
>> Bien, con este Obj se soluciona mucho...
>> Dos detalles...
>> 1... cuando queremos obtener el valor del MaskEdit... ¿no deberia de
>> devolver su valor real... sin la máscara???
>> Para ese menester está ::oMaskEdit:cText ¿no???
>> Así pues ::oMaskEdit:Value != ::oMaskEdit:cText...
>>
>> 2... cuando cambiamos de modo edición insertar/sobreescribir... no tienen
>> ningún efecto y NUNCA se sobreescribe. Para mi sería correcto cuando
>> trabajamos con alguna máscara no "insertar" entre caracteres, como cuando
>> trabajamos con un MaskEdit de tipo fecha.
>> Además, si cambiamos de modo edición insertar/sobreescribir e intentamos
>> cambiar dígitos entre máscaras, le pone un símbolo de la máscara al final
>> del texto.
>>
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> ha escrit al missatge del
>> grup de discussió: 45506d0b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Xevi,
>>>
>>> Me temo que el error existía desde siempre, y me he tomado el tiempo de
>>> retrotaer todo Xailer hasta la versión 1.0 y efectivamente también
>>> fallaba.
>>>
>>> Espero que esté arreglado con el módulo que incluyo en este email.
>>>
>>> Un saludo
>>>
>>> --
>>> Ignacio Ortiz de Zúñiga
>>> http://www.xailer.com
>>> "Xevi" <xevicomas@gmail.com> escribió en el mensaje
>>> news:[email=454f2cfd@news.xailer.com...]454f2cfd@news.xailer.com...[/email]
>>>> En la 1.1 se ha "escacharrao" lo que funcionaba en la 1.0... las
>>>> máscaras no
>>>> furulan correctamente.
>>>>
>>>> Si probais por ej. la máscara de CCC 9999-9999-99-9999999999
>>>>
>>>> Ej.: oMaskEdit1:Value := 12345678901234567890
>>>> Lo muestra correctamente 1234-5678-90-1234567890
>>>> Pero si modificamos el DC 90 por ej.... marcamos con el ratón los dos
>>>> dígitos "90" y cuando cambiamos su valor pone un - al final del valor y
>>>> desaparece el - entre el 0 y el 1...
>>>> Además si pretendemos "salvar" el valor,... oLabel1:cText :=
>>>> oMaskEdit1:Value ... contiene los - de máscara.
>>>>
>>>> Otro detalle... si utilizamos el cambio de modo escritura
>>>> inserción/sobreescribir cuando está en sobreescribir "elimina" el
>>>> carácter
>>>> de la derecha..
>>>>
>>>> Hay que darle un repaso al TMaskEdit...
>>>>
>>>>
>>>> Un Saludo.
>>>> Xevi.
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>
>
Responder