Ayuda como hago referencia o llamo un evento de clase

Hola gran amigo experto de Fox. Necesito ayuda, he creado una clase commandgroup con 2 botones y dentro procedimiento commandgroup - click he creado 2 métodos,
El primero es "nuevo" con este código:
public con
if this.caption="\<Nuevo" then
this.caption="\<Grabar"
this.parent.cmdmodificar.caption="\<Cancelar"
con=1
else
if this.caption="\<Grabar" then
this.caption="\<Nuevo"
this.parent.cmdmodificar.caption="\<Modificar"
con=2
endif
endif
el segundo es "modificar" con este codigo:
if this.caption="\<Modificar" then
this.caption="\<Cancelar"
this.parent.cmdnuevo.caption="\<Grabar"
con=3
else
if this.caption="\<Cancelar" then
this.caption="\<Modificar"
this.parent.cmdnuevo.caption="\<Nuevo"
con=4
Endif
Endif
ahora yo jalo esta clase en un formulario para mantenimiento ahi no se como llamar el metodo del commandgroup de la clase en el procedimiento click;
Ya no me acuerdo, recuerdo que era así: (nombredeclase:nombremetodo..) aver ayúdenme si es así gracias

1 Respuesta

Respuesta
1
Si hasta donde se basta con poner el thisform. Nombreclase. Cmdnuevo. Click y ahí debería ejecutar el método.
Gracias experto por tu respuesta: puse esa sintaxis que sugieres pero al ejecutar clic en el botón nuevo, me sale error: no se encuentra la propiedad caption ¿qué sera amigo experto por favor ayudame? Este es el código que puse:
Thisform.cmdcomandos1. Nuevo
IF con=1 then
Thisform.limpiacajas()
Thisform. Siguiente
Endif
IF con=2 then
INSERT INTO clientes (codigo,nombres,ruc,dni)
values (thisform.txtidbus.Value;thisform.txtnombres.value)
Endif
¿Pero deberías indicarme en que linea exactamente te marca el error y dime cmdcomandos1 es el nombre de tu clase?
Hola experto mi clase en el administrador de proyectos se llama miclase3 y mi clase se basa en un comandgroup, el error me la da en la primera linea:
cmdcomandos1. Nuevo
IF con=1 then
thisform.txtIdbus.ForeColor=RGB(0,0,255)
Endif
Pero haber creo que al pegar la clase en tu formulario le asignas un nombre y en el código debes hacer referencia a ese nombre y luego al nombre del command group y después al botón, más o menos así
Thisform.miclase.commandgroup1.command1.click
Experto me sigue saliendo el mismo error pero esta vez en el evento nuevo de la clase:
Error: no se encuentra la propiedad caption
Objeto: cmdcomandos procedimiento: nuevo
**en esta linea de abajo marca el error**
if this.caption="\<Nuevo" then
  this.caption="\<Grabar"
  this.parent.cmdmodificar.caption="\<Cancelar"
  con=1
else
  if this.caption="\<Grabar" then
    this.caption="\<Nuevo"
    this.parent.cmdmodificar.caption="\<Modificar"
    con=2
Endif
Endif
Experto ayudame si tienes tu email me lo puedes dar para enviarte mi proyecto o para tener una comunicación fluida por el messenger..
de pronto puede ser porque en el this. Caption no estas haciendo referencia al botón si no al commandgroup deberías hacer referencia a this. Parent. Nombreboton. Caption y ver si ahí no te marca error
Gracias amigo mal referencia hacia al comangroup no al botón de comando porque ya no marca ese error, amigo experto haber me sigues ayudando en este mismo proyectito de fox tengo 2 form son conjuntos de formularios, uno de ellos es Venta de pasajes al hora de ser clic en el botón asientos de este form sale el otro form osea el segundo conteniendo un Comandgroup conteniendo 35 botones simulando los asientos disponibles enlazados a ellos 2 tablas: boletos y detboleto al hacer clic en uno de estos comandos del comandgroup que es un numero de asiento "x" en el comandgroup evento - clic, pongo:
For i=1 To .gbca.Buttoncount
Thisformset.frmmante12.txtasi.value=.gbca.value
Endfor
Thisform.Hide
Para especificar el numero de asiento que se eligió en el Comandgroup, como pondría aquí en este evento experto para validar y poner en enabled los asientos ya elegidos, lo he hecho con locate for y found la búsqueda a través de un indice en el evento init del form2 para que cuando cargue este aparezca con los asientos ya guardados en la tabla y salgan Bloqueados los comandos y así pero no me sale puse así:
form2 - init
SELECT detboleto
SET ORDER TO FPAS && IDPASAJERO
LOCATE FOR detboleto.asiento=thisofrmset.form2.commangroup.value
IF found then
thisofrmset.form2.commangroup.comando1.enabled=.f.
thisofrmset.form2.commangroup.comando2.enabled=.f.
thisofrmset.form2.commangroup.comando3.enabled=.f.
thisofrmset.form2.commangroup.comando4.enabled=.f.
Endif
De antemano Gracias experto por ayudarme aquí ...
Dejame hacer el formulario como tu quieres o al menos uno básico pero que haga lo que tu necesitas, solo dame un par de días porque ahora ando medio ocupado.
Muchas gracias gran experto esperare atento tu respuesta lo que necesito te vuelves uno de mis expertos más favorito...
Gran e y buen experto no te olvides de mi pregunta estoy esperándolo tu ayuda y un gracias...
Te comento que me había olvidado totalmente de lo tuyo pero ya voy a ver si en la noche lo hago.
Espero tu respuesta atentamente Favorito experto no me decepciones...
Experto sigo esperando ayudame con mi programa... gracias
Que tal si mejor te conectas al msn y yo te voy indicando más o menos lo que tienes que hacer porque la verdad estoy bastante complicado con mi tiempo, mi mail es [email protected]
Experto más o menos a que horas entras al messenger por favor.. para ayudarme
09 00 am hora de ecuador

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas