ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Ajuda com meu programa?

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
jhoebarbosa
Novato
Novato


Registrado: Domingo, 26 de Mai de 2013
Mensagens: 2

MensagemEnviada: Dom Mai 26, 2013 2:12 pm    Assunto: Ajuda com meu programa? Responder com Citação

Olá, eu tenho uma tabela no excel que faz calculos de persiana para mim, e eu resolvi passar esses calculos para um programa em delphi7, eu criei ele etc, mas como eu sou novato não tenho certeza que a logica está certa, voces podem dar uma olhada para ver se eu posso melhorar o codigo em algo?

entao eu to axando que vai ficar muito pesado caso eu queira inserir mais linhas de codigo depois...

unit Unit_ph25;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask;

type
TFRMPH25 = class(TForm)
ComboBox1: TComboBox;
btcalcular: TButton;
lbcolecao: TLabel;
lbalt: TLabel;
lblarg: TLabel;
lbvalor: TLabel;
edaltura: TMaskEdit;
edlargura: TMaskEdit;
edvalor: TEdit;
lbduasx: TLabel;
edduasx: TEdit;
Label1: TLabel;
procedure btcalcularClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox1Select(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
FRMPH25: TFRMPH25;
duasvezes,duasx2,lisasoftflex,lisalineflex,decorada,duplaface,texturizada,perfurada,imitacaomadeira
,semfurosaparentes,texturizadasemfurosaparentes,imitacaomadeirasemfurosaparentes,altura,largura,calc1,calc2:real;
implementation

{$R *.dfm}
procedure TFRMPH25.FormCreate(Sender: TObject);
begin
lisasoftflex:=72.35; //0
lisalineflex:=77.00; //1
decorada:=121.80; //2
duplaface:=95.35; //3
texturizada:=90.00; //4
perfurada:=109.15; //5
imitacaomadeira:=134.40;//6
semfurosaparentes:=95.00; //7
texturizadasemfurosaparentes:=106.90;//8
imitacaomadeirasemfurosaparentes:=160.00; //9

end;


procedure TFRMPH25.btcalcularClick(Sender: TObject);
begin
If edaltura.Text <= '1,19' then
begin
showmessage('Altura Mínima é de 1,20!')
end
else
If edlargura.Text <= '1,24'then
begin
showmessage('Largura Mínima é de 1,25!')
end
else
If ComboBox1.ItemIndex=0 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*lisasoftflex);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=1 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*lisalineflex);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=2 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*decorada);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=3 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*duplaface);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=4 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*texturizada);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=5 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*perfurada);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=6 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*imitacaomadeira);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=7 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*semfurosaparentes);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=8 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*texturizadasemfurosaparentes);
edvalor.text:=FloatToStr(calc2);
end
else
If ComboBox1.ItemIndex=9 then
Begin
altura:=StrToFloat(edaltura.Text);
largura:=StrToFloat(edlargura.Text);
calc2:=(largura*altura*imitacaomadeirasemfurosaparentes);
edvalor.text:=FloatToStr(calc2);
end;
begin

duasvezes:=StrToFloat(edvalor.Text);
duasx2:=(duasvezes/2);
edduasx.text:=FloatToStr(duasx2);

end;
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
cyberdisk
Colaborador
Colaborador


Registrado: Domingo, 4 de Julho de 2010
Mensagens: 2391
Localização: São José dos Campos - SP

MensagemEnviada: Dom Mai 26, 2013 4:14 pm    Assunto: Responder com Citação

se voce quer simplificar o código, pode ser assim

Código:
procedure TFRMPH25.btcalcularClick(Sender: TObject);
begin
   If edaltura.Text <= '1,19' then
      showmessage('Altura Mínima é de 1,20!')
   else
      If edlargura.Text <= '1,24'then
         showmessage('Largura Mínima é de 1,25!')
      else
         begin
            altura:=StrToFloat(edaltura.Text);
            largura:=StrToFloat(edlargura.Text);
            case ComboBox1.ItemIndex of
              0: calc2:=(largura*altura*lisasoftflex);
              1: calc2:=(largura*altura*lisalineflex);
              2: calc2:=(largura*altura*decorada);
              3: calc2:=(largura*altura*duplaface);
              4: calc2:=(largura*altura*texturizada);
              5: calc2:=(largura*altura*perfurada);
              6: calc2:=(largura*altura*imitacaomadeira);
              7: calc2:=(largura*altura*semfurosaparentes);
              8: calc2:=(largura*altura*texturizadasemfurosaparentes);
              9: calc2:=(largura*altura*imitacaomadeirasemfurosaparentes);
            end;

            edvalor.text:=FloatToStr(calc2);

            duasvezes:=StrToFloat(edvalor.Text);
            duasx2:=(duasvezes/2);
            edduasx.text:=FloatToStr(duasx2);
         end;
end;


abraço
_________________
O conhecimento abre muitas portas
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
jhoebarbosa
Novato
Novato


Registrado: Domingo, 26 de Mai de 2013
Mensagens: 2

MensagemEnviada: Dom Mai 26, 2013 5:00 pm    Assunto: Responder com Citação

eita, que diferença, hehe muito obrigado meu amigo...até mais
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB