FoxPro/Visual FoxPro - Posicionarse en un PageFrame

   
Vista:

Posicionarse en un PageFrame

Publicado por Juan Miguel solis.juanmiguel@gmail.com (79 intervenciones) el 15/11/2012 15:45:38
Hola Todos

Tengo un tema que me esta volviendo loco, a ver si podéis decirme como arreglarlo......

En un formulario tengo 2 PageFrame, PagFr y PahFrT, el primero tiene 6 pestañas, el segundo solo tiene 3.

Ben cuando me muevo por la Base de datos, en función de un código del registro que leo, activo el PagFr o el PagFrT, y me posiciono en la Pagina 1 de canda uno de ellos cuando corresponde.

Pero si po ejemplo estoy en pa PagFr (pestaña 5), me muevo an la Base da datos, y el siguiente registro en de otro tipo me parece Correctamente el PafGrT en la pestaña 1, pero si vuelvo al registro anterior, me parece el PagFr en teoría con la pestaña 1 activa, pero en realidad la que esta activa es la 5 (en el que lo deje antes), y esto me esta trayendo algún que otro quebradero de cabeza.

Como puedo posicionarme en la Page que quiero del Pageframe y activarla y que sea ademas la activa ??


Espero que me podáis entender.

Gracias anticipadas y un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Posicionarse en un PageFrame

Publicado por Fidel (320 intervenciones) el 15/11/2012 16:09:35
Por programa, seleccionas la Page con: Thisform.PageFr.ActivePage=5 (la pestaña que sea)
No sé qué significa "moverse por la Base de Datos". Supongo que mueves el puntero de una tabla ó cursor que está relacionada a objetos dentro de las Page del PageFrame.
Tal vez si nos dices cuál es tu código, podamos hacer algo al respecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Posicionarse en un PageFrame

Publicado por Juan Miguel solis.juanmiguel@gmail.com (79 intervenciones) el 15/11/2012 16:25:42
Hola Fidel

Si, efectivaemente "moverse pro al base de datos", es mover el puntero a otro registro de la tabal :) :) :

Esto que comentas, es lo que tengo

Do Case

Case cExpedTAM = 'A" && Aereo
Thisform.TraeDatos && Recupero los datos en variables.
Thisform.PageExpeA.visible = .T.
Thisfom.PageExpeA.ActivePage = 1

Case cExpedTAM = 'T" && Terrestre
Thisform.TraeDatos && Recupero los datos en variables.
Thisform.PageExpeT.visible = .T.
Thisfom.PageExpeT.ActivePage = 1

EndCase

Esto me lo hace bien, el problema es que si antes en el PageExpeA.ActivePage me habia quedado posicionado en la pestaña 5 (de otro registro), ahora al volver despues de haber pasado por un registro que me activaba el Otro Pageframe, me aparece como activo la pagina 1 del PageFrame correcto, pero en cambio en la pantalla se ven los datos de la pestaña 5, cuandolo normal seria que se vieran los datos de la pestaña 1, ya que es la que activo.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Posicionarse en un PageFrame

Publicado por Fidel (320 intervenciones) el 15/11/2012 20:30:59
Juan MIguel:
Thisform.TraeDatos es un método? para que entendamos los de afuera, es mejor colocar
Thisform.TraeDatos() && con los paréntesis no hay duda alguna.

Es importante saber el contenido del método TraeDatos para tener una idea de cómo se produce la asociación de la tabla a los controles del form.
Corresponde usar Refresh, solamente si está asociando por ControlSource. Si utilizas la propiedad Value de cada control, el Refresh no hará absolutamente nada.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Posicionarse en un PageFrame

Publicado por Juan Manuel Cruz juanmcruz@hotmail.com (508 intervenciones) el 15/11/2012 18:50:27
Usa la propiedad ACTIVEPAGE para seleccionar la página activa de un PageFrame.

Y en el evento ACTIVATE() de la página mencionada incluye una llamada a REFRESH()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Posicionarse en un PageFrame

Publicado por VICTOR PEREZ (137 intervenciones) el 15/11/2012 19:20:26
Hola,

Exactamente, debes refrescar para poder que los datos de todas las pestañas se actualicen una vez seleccionado un registro de la base de datos o del cursor.

Algo similar tengo Yo en mi sistema, y asi mismo es como logro que, por ejemplo, al seleccionar un paciente por codigo, las 4 pestañas se actualicen con los datos de este paciente, aun cuando al escoger la seleccion del codigo, tuviera datos de otro registro en cualquiera de las otras pestañas.

Mis pestañas son INformacion General, Citas Medicas, Contabilidad y Busqueda...una vez selecciono el registro se actualizan todas las pestañas.

Espero que la informacion que te dio Juan Manuel te sirva.

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Posicionarse en un PageFrame

Publicado por Juan Miguel solis.juanmiguel@gmail.com (79 intervenciones) el 15/11/2012 20:16:11
Ok, Funciono. muchas gracias a todos, estaba tapadooo.....

Es que esta aplicaicon en la que estoy me esta volviendo loquitooo... :) :) :)

Gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar