Italian community of Lazarus and Free Pascal

Programmazione => LCL => Topic aperto da: CortelliStefano - Giugno 12, 2012, 10:58:41 pm

Titolo: [RISOLTO]: DbGrid: Pg su e Pg giu con dataset non attivo
Inserito da: CortelliStefano - Giugno 12, 2012, 10:58:41 pm
Un saluto a tutto il forum. Oggi ho notato che premendo Pg su e Pg giu su una DbGrid quando il dataset non e' attivo genera un errore (operazion cannot be performed on an inactive dataset).

Il problema dipende dal modulo DBGrids.pas, per risolverlo occorre modificare il file DBGrids.pas che si trova nella lcl aggiungendo:

Codice: [Seleziona]
if ValidDataSet then 
prima del begin dei tasti VK_PRIOR e VK_NEXT.

Ecco il codice corretto:

Codice: [Seleziona]
    
procedure TCustomDBGrid.KeyDown(var Key: Word; Shift: TShiftState);

[....]

VK_NEXT:
      if ValidDataSet then begin //Aggiunto if ValidDataSet then, altrimenti dava errore su griglia non attiva
        doOnKeyDown;
        if Key<>0 then begin
          doMoveBy( VisibleRowCount );
          ClearSelection(true);
          Key := 0;
        end;
      end;

    VK_PRIOR:
      if ValidDataSet then begin //Aggiunto if ValidDataSet then, altrimenti dava errore su griglia non attiva
        doOnKeyDown;
        if Key<>0 then begin
          doMoveBy( -VisibleRowCount );
          ClearSelection(true);
          key := 0;
        end;
      end;

Effettuata la variazione, occorre fare il rebuild di Lazarus, e tutto dovrebbe essere a posto.

Spero che questa informazione possa essere di aiuto ad altri.

Buona serata a tutti,

Stefano
Titolo: Re:[RISOLTO]: DbGrid: Pg su e Pg giu con dataset non attivo
Inserito da: xinyiman - Giugno 13, 2012, 10:40:16 am
Grazie mille della segnalazione stefano, fossi in te lo farei presente anche alla comunità ufficiale così sistemano definitivamente la cosa  ;)
Titolo: Re:[RISOLTO]: DbGrid: Pg su e Pg giu con dataset non attivo
Inserito da: CortelliStefano - Giugno 13, 2012, 11:03:15 am
Figurati, grazie a te di questa splendida comunità... Anche se il tempo non mi permette di essere attivo come vorrei, cerco comunque di condividere cose che possono essere di interesse generale.

Avevo già in mente di segnalare il problema, a dire la verità ho un elenco di problemi ancora da segnalare sul sito ufficiale... Purtroppo al momento sono stra-preso con le dichiarazioni fiscali e non riesco a trovare il tempo e la dovuta calma per mettermi a scrivere in inglese.

Spero verso agosto - settembre di riuscire a postare sul forum ufficiale tutta questa serie di problemi che ho riscontrato da tempo (alcuni dei quali relativi all'ambiente Mac Os X ed altri alla versione 0.9.30.X), a cui aggiungerò anche questo.

Se qualcuno volesse invece nel frattempo farlo presente sul forum ufficiale, ben venga, non mi offendo di certo, anzi avrò un problema in meno da segnalare...  ;)

Buona giornata a tutti,

Stefano
Titolo: Re:[RISOLTO]: DbGrid: Pg su e Pg giu con dataset non attivo
Inserito da: Stilgar - Giugno 14, 2012, 09:27:07 am
Occhio all'IMU ;)