Ir para conteúdo
Hacker_Buiu

[Código fonte] de todos os meus programas em Delphi/Lazarus

Recommended Posts

Coloquei os códigos fontes no GitLab por ser Open Source,sigo essa filosofia Open Source,por isso não coloquei no GitHub.

 

 

Visualizador de imagem Delphi

Coloque um OpenPictureDialog no Form e digite o código abaixo no botão:Não se esqueça de adicionar um TImage para ver a imagem.

Código:
 

if OpenPictureDialog1.Execute then
 
Image1.Picture.LoadFromFile(OpenPictureDialog1.Filename);

Editor de Texto

 

Novo
   
    Memo1.Clear;
    Memo1.SetFocus;
   
    -----------------------------------------
    Abrir
   
    if openDialog1.Execute then
    begin
    memo1.Lines.LoadFromFile(OpenDialog1.Filename);
    memo1.setfocus;
    end;
   
    -----------------------------------------
   
    Botão Salvar
   
    if save.execute then
    begin
    memo1.Lines.SaveToFile(save.Filename);
    end;
   
    -----------------------------------------
    Copiar
    Memo1.CopytoClipBoard;
   
    -----------------------------------------
    Colar
   
    Memo1.PasteFromClipboard; ;
   
    -----------------------------------------
    Recortar
   
    Memo1.CutToClipBoard
   
    -----------------------------------------
    Fonte
   
    FontDialog1.Font:=Memo1.Font;
    if FontDialog1.Execute then
    begin
    Memo1.Font:= FontDialog1.Font;
    Memo1.SetFocus;
    end;

Gerador de Senha

 

var
 
i:integer;
 
const
 
str='1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ@!#$%&*';
 
max=14;
 
begin
 
Edit1.Text:='';
 
for i:=1 to max do
 
begin
 
Edit1.Text:=Edit1.Text+str[random(length(str))+1];
 
end;

Cronômetro

 

unit Unit1;
   
    {$mode objfpc}{$H+}
   
    interface
   
    uses
      Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Buttons,
      ExtCtrls;
   
    type
   
      { TForm1 }
   
      TForm1 = class(TForm)
        Cronometrar: TBitBtn;
        Parar: TBitBtn;
        Edit1: TEdit;
        Timer1: TTimer;
        procedure CronometrarClick(Sender: TObject);
        procedure PararClick(Sender: TObject);
        procedure Timer1Timer(Sender: TObject);
      private
   
      public
   
      end;
   
    var
      Form1: TForm1;
      HoraInicial:TDateTime;
   
    implementation
   
    {$R *.lfm}
   
    { TForm1 }
   
    procedure TForm1.CronometrarClick(Sender: TObject);
    begin
     HoraInicial := Now;
     Timer1.Enabled := True;
    end;
   
    procedure TForm1.PararClick(Sender: TObject);
    begin
     HoraInicial := Now;
     Timer1.Enabled := False;
    end;
   
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
      Edit1.Text := FormatDateTime('hh:mm:ss',Now-HoraInicial);
    end;
   
    end.

Criptografador (conceito de criptografia)

 

 unit Unit1;
   
    {$mode objfpc}{$H+}
   
    interface
   
    uses
   
      Classes, SysUtils, FileUtil, Forms,
   
    Controls, Graphics, Dialogs, StdCtrls;
   
    type
   
      { TForm1 }
   
      TForm1 = class(TForm)
   
        Button1: TButton;
   
        Button2: TButton;
   
        edtcriptografado: TEdit;
   
        edttexto: TEdit;
   
        edtdescriptografado: TEdit;
   
        edtkey: TEdit;
   
        Label1: TLabel;
   
        Label2: TLabel;
   
        Label3: TLabel;
   
        Label4: TLabel;
   
        procedure Button1Click(Sender: TObject);
   
        procedure Button2Click(Sender: TObject);
   
        procedure FormCreate(Sender: TObject);
   
      private
   
       function criptografar(const key, texto:String):String;
   
       function descriptografar(const key, texto:String):String;
   
      public
   
      end;
   
    var
   
      Form1: TForm1;
   
    implementation
   
   
    {$R *.lfm}
   
   
    { TForm1 }
   
   
    procedure TForm1.Button1Click(Sender: TObject);
   
    begin
   
     edtcriptografado.Text:=criptografar(edtkey.Text,edttexto.Text);
   
    end;
   
    procedure TForm1.Button2Click(Sender: TObject);
   
    begin
   
     edtdescriptografado.Text:=descriptografar(edtkey.Text,
   
    edtcriptografado.Text);
   
    end;
   
    function TForm1.criptografar(const key, texto: String): String;
   
    var
   
      I: Integer;
   
      C: Byte;
   
    begin
   
      Result := '';
   
      for I := 1 to Length(texto) do begin
   
        if Length(Key) > 0 then
   
          C := Byte(Key[1 + ((I - 1) mod Length(Key))]) xor Byte(texto[I])
   
        else
   
          C := Byte(texto[I]);
   
        Result := Result + AnsiLowerCase(IntToHex(C, 2));
   
      end;
   
   
    end;
   
   
    function TForm1.descriptografar(const key, texto: String): String;
   
    var
   
      I: Integer;
   
      C: Char;
   
   
    begin
   
      Result := '';
   
      for I := 0 to Length(texto) div 2 - 1 do begin
   
        C := Chr(StrToIntDef('$' + Copy(texto, (I * 2) + 1, 2), Ord(' ')));
   
        if Length(Key) > 0 then
   
          C := Chr(Byte(Key[1 + (I mod Length(Key))]) xor Byte(C));
   
        Result := Result + C;
   
      end;
   
    end;
   
   
    end.

Calculadora Empresarial

 

 procedure TForm1.CalcularCicloDoProcessoClick(Sender: TObject);
    var n1,n2,resultado:real; //declaração de variáveis do tipo real(aceita numero inteiro e com vírgula)
    begin
    n1:=StrToFloat(TempoTrabalhadoEmHoras.Text);// converte n1(numero1) para numero flutuante
    n2:=StrToFloat(NumeroDeProdutosBons.Text);//converte n2(numero2)para numero flutuante
    resultado:=n1/n2; //Dividi a variável n1(numero1) e n2(numero2
    ResultadoDoCicloDoProcesso.Text:=FloatToStr(resultado);//mostra o resultado convertendo numero flutuante(Float) para texto(String)
    procedure TForm1.CalcularTaxaDeProducaoClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(TempoTrabalhado.Text);
    n2:=StrToFloat(NumeroDeProdutosBons.Text);
    resultado:=n2/n1;
    ResultadoTaxaDeProducao.Text:=FloatToStr(resultado);
   
    procedure TForm1.CalcularTaxaDeProducaoPorRecursoClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(TaxaDeProducao.Text);
    n2:=StrToFloat(NumeroDeFuncionarios.Text);
    resultado:=n1/n2;
    ResultadoTaxaDeProducaoPorRecurso.Text:=FloatToStr(resultado);
   
    procedure TForm1.CalcularGiroDeEstoqueClick(Sender: TObject);
    var n1,n2,n3,resultado:real;
    begin
    n1:=StrToFloat(NumeroDeProdutosBons.Text);
    n2:=StrToFloat(TotalDeMateriais.Text);
    n3:=StrToFloat(TotalDeProdutos.Text);
    resultado:=n1*12/n2/n3;
    ResultadoDoGiroDoEstoque.Text:=FloatToStr(resultado);
   
    procedure TForm1.CalcularFaltaDeQualidadeClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(NumeroDeProdutosComDefeitos.Text);
    n2:=StrToFloat(TotalProduzido.Text);
    resultado:=n1/n2;
    ResultadoDaFaltaDeQualidade.Text:=FloatToStr(resultado);
   
   
    procedure TForm1.SairClick(Sender: TObject);
    begin
    Form1.Close;
   
    procedure TForm1.CalcularCPVClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(NumeroDeProdutosBons.Text);
    n2:=StrToFloat(ValorUnitario.Text);
    resultado:=n1*n2;
    ResultadoCPV.Text:=FloatToStr(resultado);
   
    procedure TForm1.CalcularCustoDaFaltaDeQualidadeClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(NumeroDeProdutosComDefeitos.Text);
    n2:=StrToFloat(ValorUnitario.Text);
    resultado:=n1*n2;
    ResultadoDoCustoDaFaltaDeQualidade.Text:=FloatToStr(resultado);
    Botão Apagar:
    TempoTrabalhado.Text:='';
    TempoTrabalhadoEmHoras.Text:='';
    NumeroDeProdutosBons.Text:='';
    resultadoDoCicloDoProcesso.Text:='';
    TaxaDeProducao.Text:='';
    ResultadoTaxaDeProducao.Text:='';
    NumeroDeFuncionarios.Text:='';
    ResultadoTaxaDeProducaoPorRecurso.Text:='';
    TotalDeMateriais.Text:='';
    TotalDeProdutos.Text:='';
    ResultadoDoGiroDoEstoque.Text:='';
    NumeroDeProdutosComDefeitos.Text:='';
    TotalProduzido.Text:='';
    ResultadoDaFaltaDeQualidade.Text:='';
    ResultadoCPV.Text:='';
    ResultadoDoCustoDaFaltaDeQualidade.Text:='';
   
    Form1. close; //Fecha o Form
   
    procedure TForm2.CalcularCustoDeCarregarEstoqueClick(Sender: TObject);
    var n1,n2,n3,resultado:real;
    begin
    n1:=StrToFloat(EstoqueDeProducaoEmProcesso.Text);
    n2:=StrToFloat(ValorUnitario.Text);
    n3:=StrToFloat(TaxaDeJuros.Text);
    resultado:=n1*n2*n3;
    ResultadoDoCustoDeCarregarEstoque.Text:=FloatToStr(resultado);
   
   
    end;
   
    procedure TForm2.CalcularCustoFixoClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(SalarioDoColaborador.Text);
    n2:=StrToFloat(DespesasGerais.Text);
    resultado:=n1+n2;
    ResultadoDoCustoFixo.Text:=FloatToStr(resultado);
   
    end;
   
    procedure TForm2.CalcularCustoTotalClick(Sender: TObject);
    var n1,n2,n3,n4,resultado:real;
    begin
    n1:=StrToFloat(CPV.Text);
    n2:=StrToFloat(CustoDaQualidade.Text);
    n3:=StrToFloat(CustoDoEstoque.Text);
    n4:=StrToFloat(CustoFixo.Text);
    resultado:=n1+n2+n3+n4;
    CustoTotal.Text:=FloatToStr(resultado);
   
    end;
   
    procedure TForm2.CalcularCustoUnitarioClick(Sender: TObject);
    var n1,n2,resultado:real;
    begin
    n1:=StrToFloat(CustoTotal.Text);
    n2:=StrToFloat(NumeroDeProdutosBons.Text);
    resultado:=n1/n2;
    ResultadoDoCustoUnitario.Text:=FloatToStr(resultado);
   
   
    end;
   
    procedure TForm2.SairClick(Sender: TObject);
    begin
    Form2.Close;// Fecha o Form2
    end;
   
    procedure TForm2.ApagarClick(Sender: TObject);
    begin
    EstoqueDeProducaoEmProcesso.Text:='';
    ValorUnitario.Text:='';
    TaxaDeJuros.Text:='';
    ResultadoDoCustoDeCarregarEstoque.Text:='';
    SalarioDoColaborador.Text:='';
    DespesasGerais.Text:='';
    ResultadoDoCustoFixo.Text:='';
    CPV.Text:='';
    CustoDaQualidade.Text:='';
    CustodoEstoque.Text:='';
    CustoFixo.Text:='';
    CustoTotal.Text:='';
    NumeroDeProdutosBons.Text:='';
    ResultadoDoCustoUnitario.Text:='';
    end;

Calculadora de décimo terceiro salário

 

 unit Unit1;

    {$mode objfpc}{$H+}


    interface

    uses


     Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls;


    type



     { TForm1 }


     TForm1 = class(TForm)


     Calcular: TButton;


     Apagar: TButton;


     Edit1: TEdit;


     Edit2: TEdit;


     Edit3: TEdit;


     Sair: TButton;


     procedure ApagarClick(Sender: TObject);


     procedure CalcularClick(Sender: TObject);


     procedure SairClick(Sender: TObject);


     private


     { private declarations }


     public


     { public declarations }


     end;


    var


     Form1: TForm1;


   


    implementation


   


    { TForm1 }


   


    procedure TForm1.CalcularClick(Sender: TObject);


    var n1,n2,resultado:real;//n1(numero1),n2(numero2),resultado(resultado do calculo)


    begin


    n1:=StrToFloat(Edit1.text);


    n2:=StrToFloat(Edit2.text);


    resultado:=n1*n2/12;


    Edit3.text:=FloatToStr(resultado);


   


    end;


   


    procedure TForm1.SairClick(Sender: TObject);


    begin


     Form1.Close;


    end;


   


    procedure TForm1.ApagarClick(Sender: TObject);


    begin


     Edit1.text:='';


     Edit2.text:='';


     Edit3.Text:='';


    end;


   


    initialization


     {$I unit1.lrs}


   


    end.

Calculadora completa com porcentagem

unit UnitCalculadora;
   
    {$mode objfpc}{$H+}
   
    interface
   
    uses
      Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ExtCtrls, StdCtrls,
      Menus;
   
    type
   
      { TForm1 }
   
      TForm1 = class(TForm)
        BtnDivisao: TButton;
        BtnMultiplicacao: TButton;
        BtnSete: TButton;
        BtnOito: TButton;
        BtnNove: TButton;
        BtnC: TButton;
        BtnQuatro: TButton;
        BtnCinco: TButton;
        BtnSeis: TButton;
        BtnDois: TButton;
        BtnTres: TButton;
        BtnSubtracao: TButton;
        BtnAdicao: TButton;
        BtnUm: TButton;
        BtnPonto: TButton;
        BtnIgual: TButton;
        BtnPorcentagem: TButton;
        BtnZero: TButton;
        Edit1: TEdit;
        Label1: TLabel;
        MainMenu1: TMainMenu;
        MenuItem1: TMenuItem;
        MenuItem2: TMenuItem;
        Panel1: TPanel;
        procedure BtnAdicaoClick(Sender: TObject);
        procedure BtnCClick(Sender: TObject);
        procedure BtnCincoClick(Sender: TObject);
        procedure BtnDivisaoClick(Sender: TObject);
        procedure BtnDoisClick(Sender: TObject);
        procedure BtnIgualClick(Sender: TObject);
        procedure BtnMultiplicacaoClick(Sender: TObject);
        procedure BtnNoveClick(Sender: TObject);
        procedure BtnOitoClick(Sender: TObject);
        procedure BtnPorcentagemClick(Sender: TObject);
        procedure BtnQuatroClick(Sender: TObject);
        procedure BtnSeisClick(Sender: TObject);
        procedure BtnSeteClick(Sender: TObject);
        procedure BtnSubtracaoClick(Sender: TObject);
        procedure BtnTresClick(Sender: TObject);
        procedure BtnUmClick(Sender: TObject);
        procedure BtnPontoClick(Sender: TObject);
        procedure BtnZeroClick(Sender: TObject);
      private
   
      public
   
      end;
   
    var
      Form1: TForm1;
      valor1, valor2, porcentagem:real;
      tipoconta:string;
   
    implementation
   
    {$R *.lfm}
   
    { TForm1 }
   
    procedure TForm1.BtnAdicaoClick(Sender: TObject);
    begin
        tipoconta:='Adição';
          valor1:=strtofloat(Edit1.text);
          Edit1.Text:='';
          Label1.Caption:='+';
    end;
   
    procedure TForm1.BtnCClick(Sender: TObject);
    begin
      Edit1.text:='';
      valor1:=0;
      valor2:=0;
      tipoconta:='';
      Label1.Caption:='';
    end;
   
    procedure TForm1.BtnCincoClick(Sender: TObject);
    begin
      Edit1.text:=Edit1.text+'5';
    end;
   
    procedure TForm1.BtnDivisaoClick(Sender: TObject);
    begin
         tipoconta:='Divisão';
          valor1:=strtofloat(Edit1.text);
          Edit1.Text:='';
          Label1.Caption:='/';
    end;
   
    procedure TForm1.BtnDoisClick(Sender: TObject);
    begin
      Edit1.text:=Edit1.text+'2';
    end;
   
    procedure TForm1.BtnIgualClick(Sender: TObject);
    begin
    if tipoconta = 'Adição' then
          begin
          valor2:=StrToFloat(edit1.text);
          edit1.text:=FloatToStr(valor1+valor2);
   
        end;
   
        if tipoconta = 'Subtração' then
        begin
          valor2:=StrToFloat(edit1.text);
          edit1.text:=FloatToStr(valor1-valor2);
   
        end;
   
        if tipoconta = 'Divisão' then
        begin
          valor2:=StrToFloat(edit1.text);
          edit1.text:=FloatToStr(valor1/valor2);
   
        end;
        if tipoconta= 'Multiplicação' then
        begin
          valor2:=StrToFloat(Edit1.Text);
          Edit1.Text:=FloatToStr(Valor1 * Valor2);
        end;
   
    end;
   
    procedure TForm1.BtnMultiplicacaoClick(Sender: TObject);
    begin
         tipoconta:='Multiplicação';
          valor1:=strtofloat(Edit1.text);
          Edit1.Text:='';
          Label1.Caption:='X';
    end;
   
    procedure TForm1.BtnNoveClick(Sender: TObject);
    begin
          Edit1.text:=Edit1.text+'9';
    end;
   
    procedure TForm1.BtnOitoClick(Sender: TObject);
    begin
        Edit1.text:=Edit1.text+'8';
    end;
   
    procedure TForm1.BtnPorcentagemClick(Sender: TObject);
    var resultado:real;
   
       begin
   
        if tipoconta ='Multiplicação' then
        begin
   
         valor2:=strtofloat(edit1.text);
         resultado:=valor1*valor2/100;
         Edit1.text:=FloatToStr(resultado);
         Label1.Caption:='%';
         end;
           if tipoconta = 'Adição' then
       begin
          porcentagem:=strtofloat(edit1.text);
          porcentagem:=porcentagem/100;
          porcentagem:=porcentagem*valor1;
          edit1.text:=floattostr(valor1+porcentagem);
   
       end;
       if tipoconta = 'Subtração' then
       begin
          porcentagem:=strtofloat(edit1.text);
          porcentagem:=porcentagem/100;
          porcentagem:=porcentagem*valor1;
          edit1.text:=floattostr(valor1-porcentagem);
   
   
           end;
        if tipoconta = 'Divisão' then
       begin
          porcentagem:=strtofloat(edit1.text);
          porcentagem:=porcentagem/100;
          porcentagem:=porcentagem*valor1;
          edit1.text:=floattostr(valor1/porcentagem);
    end;
   
    end;
   
    procedure TForm1.BtnQuatroClick(Sender: TObject);
    begin
       Edit1.text:=Edit1.text+'4';
    end;
   
    procedure TForm1.BtnSeisClick(Sender: TObject);
    begin
      Edit1.text:=Edit1.text+'6';
    end;
   
    procedure TForm1.BtnSeteClick(Sender: TObject);
    begin
         Edit1.text:=Edit1.text+'7';
    end;
   
    procedure TForm1.BtnSubtracaoClick(Sender: TObject);
    begin
       tipoconta:='Subtração';
          valor1:=strtofloat(Edit1.text);
          Edit1.Text:='';
          Label1.Caption:='-';
    end;
   
    procedure TForm1.BtnTresClick(Sender: TObject);
    begin
      Edit1.text:=Edit1.text+'3';
    end;
   
    procedure TForm1.BtnUmClick(Sender: TObject);
    begin
      Edit1.text:=Edit1.text+'1';
    end;
   
    procedure TForm1.BtnPontoClick(Sender: TObject);
    begin
       Edit1.text:=Edit1.text+'.';
    end;
   
    procedure TForm1.BtnZeroClick(Sender: TObject);
    begin
      Edit1.text:=Edit1.text+'0';
    end;
   
    end.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por programananet
      Quero vender códigos fontes de sites para empresas ou outras pessoas com um site fazendo a mediação !
      Existe um site onde podemos vender código fonte , se sim qual e como vendemos ?
    • Por louisefgomes
      oii gente, é que surgiu várias dúvidas agora que eu quis iniciar desenho digital...  Então gostaria de saber qual programa vocês indicam, que tipo de notebook é melhor pra aguentar os programas e que mesa digital vocês indicam...
      para da uma ajudinha:
      01. eu queria programas que fossem recomendados para quem quer fazer quadrinhos, porém se existir um que se adeque tanto para quadrinhos quanto para desenhos realista ficaria feliz ( caso não exita pode indicar um programa bom para cada área ?)
      02. sobre as mesas eu ja vi que as melhores são da wacom queria saber qual dessas é melhor : 
            - Mesa Digitalizadora One by Wacom Pequena - CTL472L
            - Mesa Digitalizadora Wacom Intuos Pequena - CTL4100
      Agradeço desde já atenção de vocês !!!
          
    • Por Tardelli
      Olá pessoal, sou novo aqui. Estou com uma dúvida e gostaria de saber se vocês poderiam me ajudar. Tenho um blog de noticias no blogger há 10 anos. Antes meu blog aparecia com muita facilidade nos resultados no google, hoje em dia, quase não aparece. Tenho 26 mil postagens, já que é um blog de noticias. As postagens estão todas indexadas. Recentemente tive que trocar o template para um mais novo e moderno. Alguém me disse que os códigos do meu blog poderiam está com problemas. Será que vocês poderiam dá uma olhada no código fonte para perceberem alguma coisa de errada com o mesmo? Sou leigo e entendo o básico de HTML.
      meu site é o: www.catingueiraonline.com
    • Por Alvaro Pacífico Serpa
      Olá pessoal, eu estava copiando um trecho de um código fonte usando o file_gets_contents
      $log=file_get_contents($url); $trechoInicial = "VideoUrl('"; $trechoFinal = "')"; $posicao1 = strpos($log, $trechoInicial); $posicao2 = strpos( $log, $trechoFinal, $posicao1 ); $trechoCopiado = substr( $log, $posicao1 + strlen( $trechoInicial ), $posicao2 - $posicao1 - strlen( $trechoInicial ) ); echo $trechoCopiado; Estava funcionando perfeitamente e do nada parou de funcionar, tem alguma outra forma de fazer isto que estou fazendo?
    • Por MAYCON BARTOWSKI
      Gente eu fiz uma pagina em html pra um cliente de descrição do produtos contendo também uma lista de produtos compatíveis com o produto em questão.
      O problema é que ele precisam de um programa que permita ele simplesmente clicar no texto e modificar a descrição sem ter que ir no html. O program que ele está usando esta danificando os códigos alterando efeitos de mouse hover e as vezes da quebra a linha do texto que deveria ser inteira. 
      Alguém sabe de um programa que permite modificar direto no texto do design mas que não danifica os códigos?
       
×

Informação importante

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