Você está aqui: Delphi ::: Dicas & Truques ::: Data e Hora

Como retornar a diferença de dias entre duas datas em Delphi usando a função DaysBetween()

Quantidade de visualizações: 24043 vezes
Em algumas situações nós precisamos saber a diferença de dias entre duas datas. Para isso podemos usar a função DaysBetween(), presente na unit DateUtil. Esta função recebe dois objetos TDateTime e retorna um inteiro contendo a quantidade de dias entre as duas datas. Observe, no entanto, que a função DaysBetween() retorna apenas a quantidade de dias completos, ou seja, as horas, minutos, segundos e milisegundos são incluídos no cálculo dos dias. Se faltar apenas um segundo para completar um dia, tal dia não será incluído na contagem. Veja um exemplo de seu uso:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
var
  data1, data2: TDateTime;
  quant_dias: Integer;
begin
  // vamos criar as duas datas, observe que as horas
  // também foram definidas

  // primeira data: 12/01/2010 às 09:10:15
  data1 := EncodeDateTime(2010, 1, 12, 9, 10, 15, 0);

  // segunda data: 15/01/2010 às 19:10:15
  data2 := EncodeDateTime(2010, 1, 15, 19, 10, 15, 0);

  // vamos obter a quantidade de dias entre as duas datas
  quant_dias := DaysBetween(data1, data2);

  // mostra o resultado
  ShowMessage('A diferença de dias é: ' + IntToStr(quant_dias));
end;

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.

Link para compartilhar na Internet ou com seus amigos:

Delphi ::: VCL - Visual Component Library ::: TComboBox

Como retornar o índice do item selecionado em um ComboBox do Delphi usando a propriedade ItemIndex

Quantidade de visualizações: 19164 vezes
Em algumas situações precisamos saber o índice do item selecionado em um ComboBox. Isso pode ser feito por meio da propriedade ItemIndex da classe TComboBox. Esta propriedade retorna um valor inteiro representando um índice começando em 0, ou seja, o índice do primeiro item é 0. Se nenhum item estiver selecionado, o valor -1 será retornado.

Veja o código:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
var
  indice: Integer;
begin
  // vamos obter o índice do item selecionado no ComboBox
  indice := ComboBox1.ItemIndex;

  // mostra o resultado
  ShowMessage('O índice do item selecionado é: ' +
    IntToStr(indice));
end;

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.


Delphi ::: Dicas & Truques ::: Strings e Caracteres

Como usar a função ReverseString() do Delphi para inverter o texto de uma palavra ou frase em Delphi - Invertendo o conteúdo de uma string usando Delphi

Quantidade de visualizações: 25786 vezes
Em algumas situações precisamos inverter o conteúdo de uma string, ou seja, alterar a ordem de seus caracteres de forma que a string fique de trás para frente.

Em Delphi isso pode ser feito com o auxílio da função ReverseString(). Esta função recebe uma string e devolve outra string invertida. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
var
  nome: string; // declara uma variável do tipo string
begin
  nome := 'Osmar J. Silva';

  // vamos inverter o conteúdo da string
  nome := ReverseString(nome);

  // vamos exibir o resultado
  ShowMessage(nome);
end;

Não se esqueça de adicionar a unit StrUtils na cláusula uses de seu formulário.

Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009.


Delphi ::: VCL - Visual Component Library ::: TStringGrid

Como centralizar os títulos das colunas (ou o conteúdo de qualquer célula) de um TStringGrid do Delphi

Quantidade de visualizações: 13559 vezes
Em algumas situações nós precisamos centralizar os títulos das colunas de um TStringGrid. Em geral os títulos das colunas são exibidos nas células da primeira linha fixa do TStringGrid. Nesta dica eu mostrarei a forma mais comum de alcançar este efeito. Note que a técnica pode ser usada para centraliar o conteúdo de qualquer célula da grid:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  conteudo: String;
  alinhamento_anterior: Word;
begin
  // vamos centralizar os títulos das colunas, ou seja, o conteúdo
  // das células na primeira linha
  if ARow = 0 then
    begin
      // vamos obter o conteúdo da célula
      conteudo := (Sender as TStringGrid).Cells[ACol, ARow];

      // vamos obter o alinhamento atual
      alinhamento_anterior := SetTextAlign((Sender as TStringGrid).Canvas.Handle,
        TA_CENTER);

      // vamos colocar o conteúdo de volta na célula
      (Sender as TStringGrid).Canvas.TextRect(Rect,
        Rect.Left + (Rect.Right - Rect.Left) div 2, Rect.Top + 5, conteudo);

      // vamos voltar o alinhamento anterior para as demais células
      SetTextAlign((Sender as TStringGrid).Canvas.Handle, alinhamento_anterior);
    end;
end;

Aqui nós temos duas chamadas à função SetTextAlign() da API do Windows. Na primeira vez nós obtemos o alinhamento atual e definimos o novo alinhamento como TA_CENTER. Na segunda chamada nós voltamos o alinhamento anterior. Se não fizermos este procedimento, todas as demais células da grid terão seus conteúdos também alinhados ao centro.


Desafios, Exercícios e Algoritmos Resolvidos de Delphi

Veja mais Dicas e truques de Delphi

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 95 usuários muito felizes estudando em nosso site.