Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Celamar

Focus do StringGrid

Recommended Posts

Como faço para reconhecer que a célula onde eu estava informado um dado perdeu o foco...Eu quero fazer o seguinte.. validar uma sigla que consta sempre na coluna 0 do StringGrid quando a mesma perder o focu (eu tenho que varres o grid inteiro para compara se a silga já havia sido informada)..Alguem sabe de algum recurso, evento, função, qualquer coisa que dê para fazer isso????Obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao sei se entendi muito bem a questão... mas acho que para validaçoes dá pra usar os eventos:OnSetEditTextOnGetEditText

OnSetEditText occurs every time the user changes the text.OnSetEditText does not occur unless the Options property includes goEditing.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema eh que nenhum destes eventos permite fazer o loop no StringGrid...Assim eu não consigo varre o String Gris em busca de siglas para validação...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente esse eventos nao se aplicam a validaçoes...

 

Consegui implementar usando o OnSelectSell e algumas variaveis de flags :

 

Na declaraçao do Form:  private    { Private declarations }    OldRow, OldCol : Integer;no Implementation:procedure TForm1.FormCreate(Sender: TObject);begin  OldRow := -1;  { inicializando os flags}  OldCol := -1;end;procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,  ARow: Integer; var CanSelect: Boolean);Var A : Integer;begin  CanSelect := true;  if OldRow >= 0 then  begin     For A := 0 to StringGrid1.RowCount-1 do     begin        if (A <> OldRow) and             (StringGrid1.Cells[OldCol, OldRow] = StringGrid1.Cells[0,A]) then        begin           ShowMessage('Valor já existe');           CanSelect := False;        end;     end;  end;  if CanSelect then  begin     OldRow := ARow;     OldCol := ACol;  end;end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.