[Lazarus-es] sobre codetyphon (Ismael L. Donis Garcia)

Ismael L. Donis Garcia ismael en citricos.co.cu
Lun Jul 9 19:11:19 CEST 2012


1 Millón de Gracias Pedro.

La verdad he tirado a un lado a Lazarus por no encontrar una solución para 
esto, pero si lo logró con algún componente lo retomo de nuevo. Que en 
definitiva es lo que quiero, pero al no haber podido hasta el día de hoy 
resolver el problema lo había obviado como lenguaje de programación a 
utilizar.

Con esto que me dices voy a retomar el problema de nuevo a ver si lo logro 
hacer. Cuestión esta que es lo más que deseo. Veremos si lo puedo lograr, 
caso contrario tendré que esperar que implementen esta característica en 
alguna grilla para poder usar a Lazarus.

Un Gran Saludo
=========
|| ISMAEL ||
=========
----- Original Message ----- 
From: "MSc. Ing. Pedro Pablo Oviedo Vera (ENPA)" <ppo.vera en enpa.minag.cu>
To: "lazarus-es" <lazarus-es en lists.lazarus.freepascal.org>
Sent: Sunday, July 08, 2012 6:22 PM
Subject: Re: [Lazarus-es] sobre codetyphon (Ismael L. Donis Garcia)


Hola Ismael....siento dar respuesta tan tarde a tu pregunta...he estado
un tiempo alejado del object pascal y Lazarus... pero te cuento: Lazarus
te ofrece un componente ideal para el problema que describes y es
StrinGrid, el te permite control total sobre todo lo que suceda en la
grid...para lo que necesitas te recomiendo el controlador de evento
OnKeypress, por ejemplo..para controlar que en las celdas de la primera
columna siempre el dato  sea numérico generarías el siguiente código:

procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: char);
begin
 with StringGrid1
   do begin
       if Col = 1 then
        if (Key in ['0'..'9'] )  then
           begin
              Cells[Col,Row]:=Cells[Col,Row]+Key;
              Exit;
           end;
       else Exit;
       Cells[Col,Row]:= Cells[Col,Row]+Key;
       end;
end;

Es solo para ilustrar pero a partir de aquí podras construir lo que
quieras.

Saludos
pp

*********************************************************

Yo quiero introducir los datos en el grid, pero validar tanto el dato
que existe en la celda tanto antes como después de editarla. Nada de a
la hora de abrir la consulta. Porque no abro consulta alguna (en muchos
casos).
Es para agregar datos al grid o modificar los datos agregados. Pero
estos deben cumplir reglas de validaciones variables.
 Por ejemplo si en la columna 1 pongo 20 en la 2 puede solo poner X o Y,
y  así, pero sin seguir normas fijas. Y si al editarla tenía 20 restarlo
del  valor de otra columna y cuando la termine de editar sumarla a la
columna  anterior.
Son validaciones dinámicas por lo que necesito es poder tener un evento
en  el grid que sea after edit y otro before edit o por el estilo. Pero
del grid ya que eso no va a parar a un registro de forma directa.
En los lenguajes de Microsoft suelo utilizar los eventos: AfterColEdit y
BeforeColEdit que me permiten realizar estas validaciones de los cuales
puedo tomar los datos existentes en una celda determinada de la
siguiente  forma: Valor = Grid.Columns(ColIndex)
>
> Saludos Reiterados
> =========
> || ISMAEL ||
> =========
-- 
MSc. Ing. Pedro Pablo Oviedo Vera
Dirección Técnica y Desarrollo
Empresa de Proyectos e Ingeniería ENPA
Ministerio de la Agricultura
Boyeros y Conill, Piso 10 Edif MINAG, La Habana, Cuba.
Telef. (537)884 7649
(Ubuntu User #34812)



_______________________________________________
Lazarus-es mailing list
Lazarus-es en lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es






More information about the Lazarus-es mailing list