[Lazarus-es] Conocer si está seleccionado el texto en una celda de un TDBGrid en el evento KeyDown

Ismael L. Donis García ismael en citricos.co.cu
Mar Jun 21 14:45:43 CEST 2011


Todavía siguen los problemas con la propiedad  MaxLength

Ahora me da el mismo error (SIGSEGV) en la línea 4247 del archivo control.ini cuando abro y cierro el formulario 2 veces, si lo abro una sola vez no da error al cerrar, pero si lo abro una segunda vez al cerrarlo por segunda vez me da el error en la línea es la que sigue:

inherited Destroy;

Verifiqué que es la propiedad MaxLength Ya que comenté esa parte del código y no da error al cerrar por segunda vez. Tengo lo siguiente:

procedure Tfcaptar.dbgSelectEditor(Sender: TObject; Column: TColumn;
  var Editor: TWinControl);
begin
  if (Editor <> nil) then begin
   if (fconta.RegOpe = 'CP') then
     begin
       if (Column.Index = 0) then
        TCustomEdit(Editor).CharCase := ecUppercase
       else
         TCustomEdit(Editor).CharCase := ecNormal;
     end
   else if (fconta.RegOpe = 'CL') then
     begin
      if (Column.Index < 2) then
        TCustomEdit(Editor).MaxLength := 3
      else if (Column.Index < 4) then
       TCustomEdit(Editor).MaxLength := 7
      else if ((Column.Index > 5) and (Column.Index < 10)) then
       TCustomEdit(Editor).MaxLength := 35;
     end
   else if (fconta.RegOpe = 'CC') then begin
     if (Column.Index = 0) then
      TCustomEdit(Editor).MaxLength := 3
     else if (Column.Index = 1) then
      TCustomEdit(Editor).MaxLength := 35
     else
      TCustomEdit(Editor).MaxLength := 1;
   end;
  end;
end;

Saludos Reiterados
=========
|| ISMAEL ||
=========
  ----- Original Message ----- 
  From: Jesus Reyes 
  To: Spanish version of Lazarus List 
  Sent: Monday, June 20, 2011 5:30 PM
  Subject: Re: [Lazarus-es] Conocer si está seleccionado el texto en una celda de un TDBGrid en el evento KeyDown




        --- El lun 20-jun-11, Ismael L. Donis García <ismael en citricos.co.cu> escribió:


          De: Ismael L. Donis García <ismael en citricos.co.cu>
          Asunto: Re: [Lazarus-es] Conocer si está seleccionado el texto en una celda de un TDBGrid en el evento KeyDown
          A: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org>
          Fecha: lunes, 20 de junio de 2011, 15:22


          Detallo a continuación:

          TCustomEdit(Editor).CharCase := ecUppercase;  // Perfecto

          TCustomEdit(Editor).MaxLength  // da error si presiona la tecla escape 2 veces después de haber entrado en edición. El error lo da en la línea:

          TWSCustomEditClass(WidgetSetClass).SetMaxLength(Self, Value); // (línea 338)

          del procedimiento:

        Simplemente checa el editor no sea nil antes de llamar SetMaxLength



        if Editor<>nil then begin

          TCustomEdit(Editor).CharCase := ecUppercase;

          TCustomEdit(Editor).MaxLength := x;
        end;



        Jesus Reyes A.
       



------------------------------------------------------------------------------


  _______________________________________________
  Lazarus-es mailing list
  Lazarus-es en lists.lazarus.freepascal.org
  http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20110621/720f70e8/attachment-0002.html>


More information about the Lazarus-es mailing list