![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
El evento AfterScroll se lanza cada vez que te mueves de registro,ya sea por código, con un DBNavigator o con un DBGrid. Por ello, en lugar de implementar una revisión del estado para cada posible método de navegación, usas este evento. Cuando el evento se lance bastará que examines el campo ESTADO para habilitar o inhabilitar tus controles.
// Saludos |
|
#2
|
|||
|
|||
|
saludos,
les comento que con las indicaciones de validar en el evento onAfterscroll de dataset me sirvio, nadamas tengo una duda de que me da un error. realize un procedimiento para los controles que cambiara la propiedad ReadOnly a True,
el segundo procediento en el Modulo de datos: en
Si agrego estadoEtiq me da un errror de acess violation at adress 009ee93b in modulo ventas.exe read or adress ffffffff cuando voy al menu de etiquetas; esto es lo raro si la agrego me da error y despues tengo que volver al menu y entrar a etiquetas. Que puediera ser, alguna razon gracias Última edición por roman fecha: 14-04-2005 a las 22:16:29. |
|
#3
|
||||
|
||||
|
Cita:
Para empezar yo no usaría RTTI a no ser que fuera absolutamente necesario e imposible hacerlo de otra forma. Si no se domina, las probabilidades de encontrarse un "Access Violation" son altísimas ya que se hace un uso fuera de lo común (en Delphi) de apuntadores. Por ejemplo, tu haces la verificación
La primera parte de la condición ciertamente te garantiza que PropInfo no es nil pero en la segunda parte no sólo referencias PropInfo sino que vas hasta PropInfo^.PropType^.Kind. ¿Quién te garantiza que PropInfo^.PropType no es nil? Y como te decía, ¿realmente te es necesario usar RTTI? // Saludos |
|
#4
|
||||
|
||||
|
Seguramente no ha sido creada la forma la primera vez que se ejecuta el código. Bastaría añadir un IF al método EstadoEtiq para verificar que la variable frmEtiquetas no sea nil.
En particular, este tipo de manipulación de componenetes visuales, y principalmente para evitar las referencias en el módulo de datos a formas, yo me valgo del evento OnDataChange del DataSource. Hasta luego. ![]() Hasta luego;
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#5
|
|||
|
|||
|
saludos,
comento que ya realice unos cambios para comprobar si es frmEtiquetas no sea nil, y para los dos eventos tanto OnDataChange como onAfterscroll ya no da error, coloque las sig. lineas probando en uno de los dos eventos, solo me queda una duda. procedure TBD.dsEtiquetasDataChange(Sender: TObject; Field: TField); begin if frmEtiquetas = nil then frmEtiquetas := TfrmEtiquetas.Create(nil); frmEtiquetas.Show; // frmEtiquetas.ShowModal; estadoEtiq; end; Si mi forma es showmodal me da un mensaje: cannot make a visible windows modal, en caso contrario con Show puedo ver mi form sin problemas, ¿Hay alguna manera de que pueda mostrar mi form en showmodal? gracias |
|
#6
|
||||
|
||||
|
De alguna manera la forma ya está visible cuando llamas a ShowModal. Revisá tus fuentes o seguí la ejecución con el depurador para determinar en que momento se hace una llamada a Show y eliminala.
Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#7
|
|||
|
|||
|
hola,
pues no esta visible la form al llamarla desde el menu por decirlo, la hago desde el evento OnDataChange de DataSource. en el menu Eiquetas solo abro las tablas: TfrmVentasInnova.acEtiquetasExecute(Sender: TObject); begin ibEtiquetas.open; end; Existe alguna manera asignar una forma a showmodal desde el modulo de datos ? gracias |
|
#8
|
||||
|
||||
|
Revisa la propiedad Visible del formulario en el inspector de objetos y asegúrate de que esté en false.
// Saludos |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|