Ir para conteúdo
Fórum Script Brasil
  • 0

Stringgrid


Guest - Carla -

Pergunta

6 respostass a esta questão

Posts Recomendados

  • 0
alguém sabe como eu altero as colunas de tamanho em tempo de execucao?

tipo com o mouse

verifique a propriedade Options, deve estar habilitada goColSizing (true)

e para aterar dados direto no StringGrid?

é possivel?

Utilize a propriedade Cells

Veja estes post's:

Dimensionar

Largura das Coluna

Usando propriedade Cells

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Carla -

Ola

Desculpe minha ignorancia, mas eu ainda não consegui alterar os dados direto do StringGrid, eu já deixei a propriedade stringgrid1.Options(gdEditing):= true;

ate consigo alterar, mas como eu gravo esse dado alterado no Banco de dados?

e mais uma coisa, eu fiz como você falou, goColSizing (true), mas não tem como fazer algo que quando eu saia do programa e volte ele fique como eu havia alterado (o tamanho) ?

Agradeço muito a sua atenção

Link para o comentário
Compartilhar em outros sites

  • 0
ate consigo alterar, mas como eu gravo esse dado alterado no Banco de dados?
mas não tem como fazer algo que quando eu saia do programa e volte ele fique como eu havia alterado (o tamanho) ?
Carla, você precisará gravar a largura das colunas ao sair (p.e. OnClose) da tela que contém o grid alterado e restaurar esta informação ao mostrar (p.e. OnShow) a janela novamente.

Terá que "varrer" todas as colunas do StringGrid:

// para gravar, o loop deverá ser mais ou menos assim 
var
  Idx, LarguraColuna :Integer;
begin
  for Idx := 0 to StringGrid1.ColCount -1 do
  begin
    LarguraColuna := StringGrid1.ColWidths[Idx];  //
   // aqui deverá implementar o mecanismo que gravará a informação desejada
   // varia conforme a opção: gravar em arquivo ini (local) ou no banco
    ...
  end;
end;

// para recuperar, o loop deverá ser mais ou menos assim 
var
  Idx, LarguraColuna :Integer;
begin
  for Idx := 0 to StringGrid1.ColCount -1 do
  begin
   // aqui deverá implementar o mecanismo que lerá a informação desejada em LarguraColuna
   // varia conforme a opção: ler de arquivo ini (local) ou do banco
    StringGrid1.ColWidths[Idx] := LarguraColuna; // atribui o valor lido (recuperado)
    ...
  end;
end;

[]s

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Carla -

Ola..

Era exatamente isso que estava precisando...o tamanho das colunas ficou muito legal nesse esquema que você me passou..

O esquema para gravar no Banco de dados..os dados que eu manipulo direto no Stringrid, eu ate consegui alterar com o stringgrid1.Options(gdEditing):= true;

e para gravar no DB como vou saber o qual tenho que alterar no Banco de dados?

Agradeço muito sua ajuda. sou nova na area e ainda estou me batendo um pouco

Carla

Link para o comentário
Compartilhar em outros sites

  • 0
e para gravar no DB como vou saber o qual tenho que alterar no Banco de dados?
Se você grava a informação sobre todas as colunas, então não necessita saber - basta gravar as informações de todas as colunas. Mas se você grava apenas as que sofrem alteração, em relação a largura definida em design-time, então terá que pensar em uma solução.

[]s

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...