TyttoSoft

DICAS | SOFTWARE | PROGRAMAÇÃO | OPORTUNIDADE



Data por extenso Lazarus



  

A IDE utilizada será Lazarus.

Vamos criar um novo projeto:

No menu do Lazarus

Projeto > Novo Projeto

vamos na propriedade do nosso form:

Height: 251 

Width : 401

Vamos Adicionar os seguintes componentes:

Na paleta Standard

1 Label

Na paleta Common Controls

1 DateTimePicker

Na paleta Misc

1 Calendar

Vai ao Editor de Código tecla de atalho F12

Em Private adicione:

function DataPorExtenso(Data:TDateTime):String; 

Em seguida clique em Ctrl + Shift + C

E adicione o código 

var

  // Array recebe dia em Integer e retorna em String

  DiaSemana: array[1..7] of String;

  // Array recebe o em Integer e retorna em String

        mes: array[1..12] of String;

  // Recebe dia da semana

          I:Integer;

      D,M,A:Word;

begin

  // Atribuir a nossa array DiaSemana

  // o dia por extenso

  DiaSemana[1]:='Domingo';

  DiaSemana[2]:='Segunda Feira';

  DiaSemana[3]:='Terça Feira';

  DiaSemana[4]:='Quarta Feira';

  DiaSemana[5]:='Quinta Feira';

  DiaSemana[6]:='Sexta Feira';

  DiaSemana[7]:='Sabado';

  // Atribuir a nossa array mes

  // O Mês por extenso

  mes[1]:='Janeiro';

  mes[2]:='Fevereiro';

  mes[3]:='Março';

  mes[4]:='Abril';

  mes[5]:='Maio';

  mes[6]:='Junho';

  mes[7]:='Julho';

  mes[8]:='Agosto';

  mes[9]:='Setembro';

  mes[10]:='Outubro';

  mes[11]:='Novembro';

  mes[12]:='Dezembro';

  //DecodeDate decodifica o ano, mês

  //e dia armazenados em Data e os retorna

  //nas variáveis Year , Month e Day .

  DecodeDate(Data,A,M,D);

  //I recebe o dia do mês

  I:=DayOfWeek(Data);

  Result:=DiaSemana[I] + ' de '+

  mes[M] + ' de '+ IntToStr(A);

Agora no Eventos do nosso Calendar

damos um clique duplo no nosso OnClick e adicionamos

o código:

Label1.Caption:=DataPorExtenso(Calendar1.DateTime); 

E no eventos do nosso DateTimePicker 

damos um clique duplo no nosso OnChange e 

adicionamos o código:

Label1.Caption:=DataPorExtenso(DateTimePicker1.Date); 

Pronto precionamos F9 e testamos 

Nossa Unit deve ficar da seguinte forma

unit Unit1;


{$mode objfpc}{$H+}


interface


uses

  Classes, SysUtils, FileUtil, DateTimePicker, Forms, Controls, Graphics,

  Dialogs, StdCtrls, Calendar;


type


  { TForm1 }


  TForm1 = class(TForm)

    Calendar1: TCalendar;

    DateTimePicker1: TDateTimePicker;

    Label1: TLabel;

    procedure Calendar1Click(Sender: TObject);

    procedure DateTimePicker1Change(Sender: TObject);

  private

   function DataPorExtenso(Data:TDateTime):String;

  public


  end;


var

  Form1: TForm1;


implementation


{$R *.lfm}


{ TForm1 }


procedure TForm1.Calendar1Click(Sender: TObject);

begin

Label1.Caption:=DataPorExtenso(Calendar1.DateTime);

end;


procedure TForm1.DateTimePicker1Change(Sender: TObject);

begin

  Label1.Caption:=DataPorExtenso(DateTimePicker1.Date);

end;


function TForm1.DataPorExtenso(Data: TDateTime): String;

var

  // Array recebe dia em Integer e retorna em String

  DiaSemana: array[1..7] of String;

  // Array recebe o em Integer e retorna em String

        mes: array[1..12] of String;

  // Recebe dia da semana

          I:Integer;

      D,M,A:Word;

begin

  // Atribuir a nossa array DiaSemana

  // o dia por extenso

  DiaSemana[1]:='Domingo';

  DiaSemana[2]:='Segunda Feira';

  DiaSemana[3]:='Terça Feira';

  DiaSemana[4]:='Quarta Feira';

  DiaSemana[5]:='Quinta Feira';

  DiaSemana[6]:='Sexta Feira';

  DiaSemana[7]:='Sabado';

  // Atribuir a nossa array mes

  // O Mês por extenso

  mes[1]:='Janeiro';

  mes[2]:='Fevereiro';

  mes[3]:='Março';

  mes[4]:='Abril';

  mes[5]:='Maio';

  mes[6]:='Junho';

  mes[7]:='Julho';

  mes[8]:='Agosto';

  mes[9]:='Setembro';

  mes[10]:='Outubro';

  mes[11]:='Novembro';

  mes[12]:='Dezembro';

  //DecodeDate decodifica o ano, mês

  //e dia armazenados em Data e os retorna

  //nas variáveis Year , Month e Day .

  DecodeDate(Data,A,M,D);

  //I recebe o dia do mês

  I:=DayOfWeek(Data);

  Result:=DiaSemana[I] + ' de '+

  mes[M] + ' de '+ IntToStr(A);

end;


end.

                

Link para Download Projeto




21/08/2018 20:55 Lazarus 539


loading...

Copyright © TyttoSoft 2018 | Desenvolvido por www.TyttoSoft.com.br