FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Como marcar una fila de un DBGrid?
Buenas tardes Sr del foro. La duda que tengo es como enfoco una fila de un DBGrid un ejemplo seria tengo un boton un edit y un dbgrid, introdusco el numero 2 en el edit y al precionar enter seme enfoca la segunda fila del dbgrid, como lo hago, gracias de antemaano.
__________________
____________________________ Un saludo a todos... |
#2
|
|||
|
|||
Para posisionarte en el registro que buscas segun el valor que capturaste puedes utilizar la funcion Locate con la query que alimenta tu dbgrid:
function Locate(const KeyFields: String; const KeyValues: Variant; Options: TLocateOptions): Boolean; por ejemplo si es un solo campo en el evento onclick de tu boton: myquery.locate('Nombredelcampo', edit.text, [locaseinsensitive]); si son mas de dos campos y para darle mas agilidad: If myquery.locate('campo1';'campo2', VarArrayOf([edit1.text, edit2.text]), [locaseinsensitive]) = false then showmessage('No se encuentraron coincidencias'); para pintar la fila de tu debe grid seleccionada te la debo una vez lo hice voy a buscar el codigo y te lo paso |
#3
|
|||
|
|||
Ya lo recorde, en el objet inspector en elije options de tu dbgrid, establece a true la propiedad dgRowSelect, despues que hagas el locate solo mandale el focus a tu dbgrid
If myquery.locate('campo1';'campo2', VarArrayOf([edit1.text, edit2.text]), [locaseinsensitive]) = false then showmessage('No se encuentraron coincidencias') else dbgrid.setfocus; asi me funciono a mi... espero te sirva |
|
|
|