Marcos,
Achei como é.
Vou compartilhar com todos!!
type
TcxGridDataControllerAccess = class(TcxGridDataController);
procedure TfrmVarAnalises.MoveRecord(ARecordIndex: Integer;
IsUpDirection: Boolean);
var
ANewIndex, ASourceRecordIndex: Integer;
begin
if IsUpDirection then
ASourceRecordIndex := ARecordIndex - 1
else
ASourceRecordIndex := ARecordIndex + 1;
with TcxGridDataControllerAccess(tbvAnalises.DataController) do
begin
if (ASourceRecordIndex >= RecordCount) or (ASourceRecordIndex < 0) then
Exit;
BeginUpdate;
try
ANewIndex := AppendRecord;
CopyRecord(ARecordIndex, ANewIndex);
CopyRecord(ASourceRecordIndex, ARecordIndex);
CopyRecord(ANewIndex, ASourceRecordIndex);
DeleteRecord(ANewIndex);
finally
FocusedRecordIndex := ASourceRecordIndex;
EndUpdate;
end;
end;
end;
// Para subir as linhas...
cgdAnalises.SetFocus;
if tbvAnalises.Controller.FocusedRowIndex <> -1 then
MoveRecord(tbvAnalises.Controller.FocusedRecordIndex, True);
// Para descer as linhas...
cgdAnalises.SetFocus;
if tbvAnalises.Controller.FocusedRowIndex <> -1 then
MoveRecord(tbvAnalises.Controller.FocusedRecordIndex, False);
Obrigado Marcos pelas dicas!!!
MuriloCunha.
On 23/06/2010 15:29, Marcos Bernardo wrote:
> Não se se entendi... mas segue...
>
> GridDados.DataController.GotoNext;
> GridDados.DataController.GotoFirst;
> GridDados.DataController.GotoPrev;
> GridDados.DataController.GotoLast;
>
> Veja se e isso..
>
> abraço
> Marcos Bernardo
>
> Em 23 de junho de 2010 15:22, Murilo Cunha<[email protected]> escreveu:
>
>
>>
>> Pessoal,
>>
>> Como eu faço para subir uma linha em um TcxGridTableView?
>> Gostaria de fazer o seguinte:
>>
>> Linha 1 Produto A R$ 1,25
>> Linha 2 Produto B R$ 3,50
>> Linha 3 Produto C R$ 9,50 ----> Subir esta linha ateh o topo
>> (pode ser varias etapas - varios cliques no botao)
>> Linha 4 Produto D R$ 11,80
>>
>> Linha 1 | Produto C | R$ 9,50
>> Linha 2 | Produto A | R$ 1,25
>> Linha 3 | Produto B | R$ 3,50
>> Linha 4 | Produto D | R$ 11,80
>>
>> Obrigado
>> MuriloCunha
>>
>>
>>
>>
>
>
>