Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________
Nunca hay personas Así dentro de la comunidad de Fox , solo hay personas que están tratando de aprender , tu eres una. Foxpro es un lenguaje de programación orientado a objeto (POO)
Te mando la descripción que da el manual de fox. (copia y pega en la línea de comandos el ejemplo de abajo)
NODEFAULT y el DODEFAULT() manejan la jerarquía de clases en fox
Además de escribir código para los métodos y eventos de un objeto, puede ampliar el conjunto de métodos en las subclases de clases de base de Visual FoxPro. Estas son las reglas para escribir código de evento y métodos:
Al crear una clase, ésta hereda automáticamente todas las propiedades, los métodos y los eventos de la clase primaria. Si se escribe código para un evento en la clase primaria, ese código se ejecutará cuando se produzca el evento con respecto a un objeto basado en la subclase. Sin embargo, podrá sobrescribir el código de la clase primaria escribiendo código para el evento en la subclase.
Para llamar explícitamente al código de evento en una clase primaria cuando la subclase tiene código escrito para el mismo evento, utilice la función DODEFAULT( ).
Por ejemplo, podría tener una clase llamada cmdBottom basada en la clase de base del botón de comando que tuviera el código siguiente en el evento Click:
GO BOTTOM
THISFORM.Refresh
Al agregar un objeto basado en esta clase a un formulario llamado, por ejemplo, cmdBottom1, puede decidir que también desea mostrar un mensaje para informar al usuario de que el puntero de registro está en la parte inferior de la tabla. Podría agregar el código siguiente al evento Click del objeto para mostrar el mensaje:
WAIT WINDOW "At the Bottom of the Table" TIMEOUT 1
Sin embargo, al ejecutar el formulario se muestra el mensaje, pero el puntero de registro no se mueve porque nunca se ejecuta el código del evento Click de la clase primaria. Para asegurarse de que también se ejecuta el código del evento Click de la clase primaria, incluya las siguientes líneas de código en el procedimiento del evento Click del objeto:
DODEFAULT( )
WAIT WINDOW "At the Bottom of the Table" TIMEOUT 1
Nota Puede utilizar la función ACLASS( ) para determinar todas las clases de la jerarquía de clases de un objeto.
En algunos casos, deseará evitar que se produzca el comportamiento predeterminado de la clase de base en un evento o método. Para ello, incluya la palabra clave NODEFAULT en el código de método que escriba. Por ejemplo, el programa siguiente utiliza la palabra clave NODEFAULT en el evento KeyPress de un cuadro de texto para impedir que se muestren en el cuadro los caracteres escritos:
frmKeyExample = CREATEOBJECT("test")frmKeyExample.Show
READ EVENTS
DEFINE CLASS test AS FORM
ADD OBJECT text1 AS TEXTBOX
PROCEDURE text1.KeyPress
PARAMETERS nKeyCode, nShiftAltCtrl
NODEFAULT
IF BETWEEN(nKeyCode, 65, 122) && between 'A' and 'z'
This.Value = ALLTRIM(This.Value) + "*"
ACTIVATE SCREEN && send output to main Visual FoxPro window
?? CHR(nKeyCode)
ENDIF
ENDPROC
PROCEDURE Destroy
CLEAR EVENTS
ENDPROC
ENDDEFINE
--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/663628fb-06e4-40ef-a119-f3bed429ea1cn%40googlegroups.com.
--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/663628fb-06e4-40ef-a119-f3bed429ea1cn%40googlegroups.com.
Has recibido este mensaje porque estás suscrito a un tema del grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este tema, visita https://groups.google.com/d/topic/publicesvfoxpro/WRFYViguYKw/unsubscribe.
Para cancelar la suscripción a este grupo y a todos sus temas, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/CAKboPe8VRo9qmiMDpFchkYcJnj3xoq1q%3DqtrTHb7oVJA-XcQag%40mail.gmail.com.