FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Usando SetWindowLong / GetWindowLong
Hola amigos
Para quienes pueda servirle o desconozcan su uso, aquí les dejo algunas de las muchas utilidades que podemos darle a la función SetWindowLong.
Ejemplos de uso:
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#2
|
||||
|
||||
Muuuy interesante, gracias
Espero no olvidarme cuando me haga falta |
#3
|
||||
|
||||
Pues lo acabo de probar y solamente me funciona OnlyNumber.
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#4
|
||||
|
||||
Hola Marcos.
Que extraño, tal vez sea la versión de Delphi aunque sería raro... , las pruebas las hice sobre Delphi 7. Pero por si acaso aca te pongo un demo con un Edit, un Memo y un LabeledEdit que aquí esta funcionando, a ver si sucede lo mismo. Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 19-09-2011 a las 19:49:23. |
#5
|
||||
|
||||
Para descartar toda posibilidad de que pudiera haber cometido un error, reproduje tu prueba usando tres Edits y sigue funcionando correctamente:
A menos que esto tuviera que ver en tu caso: Cita:
Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 10-09-2011 a las 19:03:31. |
#6
|
||||
|
||||
A mí me funciona sólo onlynumber
D2007 |
#7
|
||||
|
||||
Hola Casimiro.
No pude encontrar una referencia exacta a los usos de SetWindowLong con conflictos, pero encontré varias con casos similares. Aparentemente algunos usos sólo corren compiladas con versiones Delphi 2006 y anteriores. Pareciera que el problema se produce por que a partir de la versión 2007, algunos controles son manejados por la VCL. De las referencias de donde infiero esto destaco estas dos: Cita:
Cita:
Así que las funciones que puse arriba (exeptuando OnlyNumbers) aparentemente sólo funcionarían hasta la versión de Delphi 2006 (quedaría probarlas con esa versión para confirmarlo). Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 10-09-2011 a las 21:49:52. |
#8
|
||||
|
||||
La prueba la hice con D7, ahora me he descargado tu ejemplo y me ocurre lo mismo solamente funciona OnlyNumber.
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#9
|
||||
|
||||
Cita:
Si no es mucho abusar de tu tiempo ¿ Podrías probar este ejecutable compilado en mi máquina ? (el archivo está limpio) Despues de enterarme que usas Delphi 7 estoy totalmente desconcertado... ya que me a mí todas la funciones me las ejecuta correctamente. Un saludo y gracias. Edito: Y ya a esta altura estoy intrigadísimo por encontrar el motivo ...
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 26-09-2011 a las 01:35:30. |
#10
|
||||
|
||||
Acabo de ejecutarlo y ocurre lo mismo, quizás obedezca a alguna configuración relacionada con el país.....
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#11
|
||||
|
||||
Hola Marcos.
Muchisimas gracias por tu atención. Voy a investigar el por qué de tán extraño comportamiento... , y les comunico cualquier novedad. Un saludo y gracias nuevamente.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#12
|
||||
|
||||
Yo lo he ejecutado también con wine en ubuntu y funciona sólo onlynumber.
Y ahí no tiene nada que ver windows, delphi, ni nada de eso. Qué cosas más extrañas |
#13
|
||||
|
||||
Hola amigos.
Acabo de pasar el código fuente a un colega que tiene Delphi XE y a él también le funciona correctamente. Cambié la configuración regional a España y de idioma a español tomando en cuenta la observación de Marcos y nada... sigue funcionando bién. Aunque estoy convencido que Marcos le está arrimando bastante al orígen del problema ya que el ejecutable en mi máquina funciona y en la de ustedes no. Ante la imposibilidad reproducir que no funcione, ando dando palos a ciegas... Leí por ahí que usar InvalidateRect podría ser necesario en algunos casos Pero realmente no sé si solucionará algo por que en mi caso funciona del mismo modo. Ojalá algún compañero pueda justificar esta diferencia de comportamiento. La verdad es que no encuentro el por qué. Un desconcertado saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 11-09-2011 a las 00:21:04. |
#14
|
||||
|
||||
Pasa el código fuente del proyecto para compilarlo, a ver si es algo del compilador.
|
#15
|
||||
|
||||
Hola Casimiro.
Está en el mensaje #4, si tenés algún inconveniente para verlo lo subo nuevamente. Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#16
|
||||
|
||||
Perdón, no me había dado cuenta, sólo había visto el ejecutable.
Lo he compilado y ejecutado, el resultado es el mismo, sólo funciona onlynumber. He desempolvado un viejo equipo que tiene winxp y delphi 5, lo he ejecutado y sólo funciona onlynumber. |
#17
|
||||
|
||||
Hola ecfisa:
Usando Delphi 7 Enterprise en un PC con Windows XP SP3 en ingles, solo funciona ES_NUMBER. Usando Delphi 7 Enterprise en un PC con Windows 7 Professional en ingles, todo funciona. Usando Delphi 7 Enterprise en un PC con Windows Vista Home Premium SP2 en Español, todo funciona. Por ser un API el funcionamiento depende del OS : http://www.delphi3000.com/articles/a...=SetWindowLong ¿Que OS tienen los PC donde funciono? Como nota adicional pruebas con los Edit styles : ES_PASSWORD, ES_READONLY y ES_UPPERCASE no funcionaron en ninguno de los anteriores OS. Ver estos links: http://www.delphigroups.info/3/3/144938.html http://www.autohotkey.com/docs/misc/Styles.htm#Edit Saludos, Nelson. Última edición por nlsgarcia fecha: 15-09-2011 a las 16:19:23. |
#18
|
||||
|
||||
acabo de testear el archivo compilado, Sobre un windows XP Profesional (Version 2002) SP3 y funciona correctamente.
saludos. PD: Configuracion Regional: Español Argentina. Numeros: Separador de miles "." de Decimales "," saludos. Última edición por Enan0 fecha: 15-09-2011 a las 16:27:58. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Usando isql | santiago14 | Firebird e Interbase | 4 | 02-02-2013 23:02:43 |
Usando GLibWMI | Suriu | Windows | 2 | 17-06-2010 12:13:25 |
Usando INNER JOIN | alcides | SQL | 9 | 07-03-2005 10:29:49 |
consulta usando IF .. ELSE.. en un FROM | raffagia | SQL | 1 | 19-10-2004 11:00:50 |
usando el registro | redlyon13 | API de Windows | 2 | 01-12-2003 10:47:07 |
|