![]() |
form con botones visibles o no
Tengo un form con un dbnavigator y en mi form tengo unos botones que segun una condición tienen que mostrarse o no. El problema es que no se como hacerlo. Habia puesto en el evento onshow este codigo:
Código:
if dbCheckBox1.Checked then gracias |
Hola:
Si, como supongo, los botones se habilitan/deshabilitan dependiendo del valor de un campo del Dataset en cuestión, el botón Next no es el mejor lugar puesto que ahí aún no se ha cambiado de registro. Como la lógica pertenecería más bien al Dataset, y este se debe de encontrar en un DataModule, lo que he hecho en esos casos es colocar un DataSource ligado al Dataset deseado en dicho formulario (independientemente de que ya haya otro/s DataSources ligados en el DataModule). Si interceptas el evento OnDataChange del DataSource, ahí sabes cuándo se ha cambiado de registro: Código:
procedure DataSource1.DataChange (AField: TField); |
A lo mejor he hecho algo mal xo haciendo lo que me dijiste me da un error de ejecución. Una violacion de memoria dice :confused:
Cita:
|
Hola:
El código que te puse es orientativo, no lo cojas literalmente, puse el nombre de unos campos "CampoInscripcion" y "CampoPractica", suponiendo que la información que habilita/deshabilita los botones se puede sacar de ahí, de la tabla que estés tratando. Por lo demás, no sé a qué puede ser debido ese error, pero recuerda que ese Datasource debe estar en el formulario donde tienes los botones. También te recomendaría mirar la ayuda de los TActionList, quizás te convenga definir dos acciones "Inscripción" y "Práctica", asociarlas a los botones correspondientes, e interceptar el evento OnUpdate de las mismas (que Delphi lanza cuando se actualiza el formulario), para fijar la propiedad Enabled. Son ideas, un saludo |
Muchas gracias. Ya funciona. Lo que hacia mal era no poner el datasource en el form donde estaban los botones
Graciasssss :D |
La franja horaria es GMT +2. Ahora son las 05:04:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi