FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
como modificar acciones en dbnavigator
Hola
Soy muy nuevo en delphi estoy tratando de aprender delphi para traducir unos programas a este ambiente asi que mi pregunta es muy simple leyendo en el help hice una aplicacion para ver/modificar/agregar datos a una tabla sin embargo, a la hora de agregar me permite duplicar campos Como modifico el dbnavigator para ponerle algunas condiciones cuando se le da click al boton de agregar? Como puedo cambiar el mensaje de confirmación del boton de borrado? Gracias por adelantado |
#2
|
||||
|
||||
Hola,
Siendo que eres nuevo en Delphi, quizá lo primero que debas saber es que todos los controles DBAware (DBGrid, DBEdit, DBNavigator, etc.) son tan sólo una interfaz entre el usuario y el DataSet (Table, Query, etc.) al que estén conectados. Esto quiere decir que sirven "sólo" para presentar datos y enviar comandos al DataSet. Pero toda el control de acceso a los datos está en los DataSets. Por ejemplo, cuando oprimes el botón "Next" del DBNavigator, simplemente estás mandando el comando Next al DataSet asociado. Cuando oprimes el botón "Insert" simplemente mandas el comando Insert al DataSet para que agregue un registro en blanco, y lo mismo cuando oprimes el botón "Post". Entonces, no es en el DBNavigator donde debes controlar cosas como la duplicación de registros sino en el mismo DataSet mediante los eventos apropiados. Por ejemplo, el DataSet tiene el evento OnBeforePost para hacer validaciones antes de guardar los datos en la base. También tiene el evento OnPostError en donde controlas los posibles errores generados por el motor de la base de datos al insertar o guardar un registro. Tanbién está el evento OnBeforeDelete, que se genera cuando se usa el comando Delete del DataSet (que es el comando que el DBNavigator envia al DataSet cuando oprimes el botón "Delete"). En este evento es donde puedes suprimir el mensaje de confirmación y poner el tuyo propio. Te recomiendo que busques en la ayuda de Delphi acerca de éstos y otros eventos de los DataSets. // Saludos |
|
|
|