StringGrid: como retornar o valor de uma determinada coluna?

Delphi

21/01/2008

Caros amigos estou utilizando um StringGrid,

consigo inserir os dados nas linhas e colunas.


só não estou conseguindo retornar o valor de uma determinada coluna para uma varialvel.

Ex:

quando eu clicar ou pressionar enter , quero que o valor da coluna
X e linha Y va para a variavel NOME.


Fábio Galvão

Fábio Galvão

Curtidas 0

Respostas

Weber

Weber

21/01/2008

Utilize o evento OnSelectCell

varNome := StringGrid1.Cells[aRow,aCol]


GOSTEI 0
Wagnermarrane

Wagnermarrane

21/01/2008

como faço par poder retornar o valor de varias colunas numa mesma linha?


GOSTEI 0
Fabianosales

Fabianosales

21/01/2008

Declare uma variável pública do tipo integer chamada Linha que irá armazenar a linha corrente no StringGrid.
  public
    { Public declarations }
    Linha : Integer;

Agora atualize essa variável no envento onSelectCell do StringGrid.
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
  var CanSelect: Boolean);
begin
  Linha := ARow;
end;

Crie uma função que retorne o texto de uma determinada linha:
function TForm1.GetRowText(pRow: integer; const pSeparator:string): string;
var
  Coluna, i : integer;
  s : string;
begin
  s := EmptyStr;
  for i:=0 to Pred(StringGrid1.ColCount) do
    s := s + StringGrid1.Cells[pRow, Linha] + pSeparator;
  Result := s;
end;


Agora basta chamar a função criada, passando como parâmetro a variável Linha e uma string que será usada para separar os valores das colunas. Por exemplo:
procedure TForm1.Button2Click(Sender: TObject);
begin
  ShowMessage(GetRowText(Linha, ´;´));
end;



GOSTEI 0
Wagnermarrane

Wagnermarrane

21/01/2008

valeu pela ajuda
Obrigado


GOSTEI 0
POSTAR