[Lazarus-es] Conocer el tipo de cursor que tiene un grid

Ismael L. Donis García ismael en citricos.co.cu
Jue Abr 28 18:16:57 CEST 2011


Perdona la ignorancia, pero como lo preguntaría?

No se porque me cae con el cursor de la rayita si no mando a editar nada, traté de hacer un ejemplo con lo mismo, pero más pequeño y sin embargo me sale el grid con el triangulo negro poniendo lo mismo que el proyecto original.

No entiendo porque en uno me sale un cursor y en otro otro, el cual no me coge bien si estoy al final del dataset o no.

Yo instancio el formulario de la siguiente forma:

procedure Tfconta.mnuarcclartClick(Sender: TObject);
var
  f: Tfcaptar;
begin
  closeforms();
  strOpe := 'RT';
  f:=Tfcaptar.Create(Self);
  f.Caption := self.mnuarcclart.Caption;
  f.ShowModal;
  f.Free;
  strOpe := '';
end;     

Y en el formulario pongo:

procedure Tfcaptar.FormCreate(Sender: TObject);
var
  strsql: string;
begin
  if fconta.RegOpe = 'RT' then
    begin
      ds.FieldDefs.Add('reg', ftSmallint);
      ds.FieldDefs.Add('nombre', ftString, 35);
      ds.Open;
      dbg.Columns.Items[0].Title.Caption := 'Registro';
      dbg.Columns.Items[0].Title.Alignment:=taCenter;
      dbg.Columns.Items[0].Alignment:=taCenter;
      dbg.Columns.Items[0].Width:=60;
      dbg.Columns.Items[1].Title.Caption := 'Nombre';
      dbg.Columns.Items[1].Width:=360;
      strsql := 'select r.reg, r.nombre from screg r where r.cancel=0 order by r.reg';
      dm.p_rssc1(strsql, true);
      while not dm.rssc1.EOF do begin
        ds.Append;
        ds.FieldByName('reg').AsInteger := dm.rssc1.FieldByName('reg').AsInteger;
        ds.FieldByName('nombre').AsString := dm.rssc1.FieldByName('nombre').AsString;
        ds.UpdateRecord;
        dm.rssc1.Next;
      end;
      dm.p_rssc1();
      if ds.RecordCount > 0 then ds.First;
    end;
end;

Y me sale la dichosa cruz verde y no el triangulo negro que es con el que me trabaja bien el siguiente procedimiento:

procedure Tfcaptar.dbgKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState
  );
begin
  if key = 13 then begin
    if ((dbg.DataSource.DataSet.EOF) and (dbg.SelectedIndex = 1) and (not dbg.EditorMode)) then begin
    key:=0;
    SelectNext(ActiveControl, True, True);
    end;
  end;
end;        

Saludos Reiterados
=========
|| ISMAEL ||
=========
  ----- Original Message ----- 
  From: Maxi 
  To: Spanish version of Lazarus List 
  Sent: Thursday, April 28, 2011 12:00 PM
  Subject: Re: [Lazarus-es] Conocer el tipo de cursor que tiene un grid


  Tenes que preguntar por el modo en que se encuentra la tabla dsedit, dsinsert, etc. el tipo de cursor refleja el estado de dataset


  -- 
  No a la obsolecencia programada: http://dimensionargentina.blogspot.com/2011/01/todo-esta-disenado-para-romperse.html

  Twitter: @nenunocomar
  Identi.ca: @nenuno
  Linux User #495070
  Ubuntu User #28504
  http://miexperiencialinux.blogspot.com/

  El que pregunta aprende, y el que contesta aprende a responder.



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


  _______________________________________________
  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/20110428/308a3cac/attachment-0002.html>


More information about the Lazarus-es mailing list