Aninha :) 0 Denunciar post Postado Maio 31, 2009 Olá Pessoal boa noite Estou tentando criar uma pocedure calcParcelas porém ainda não entendo muito ;) ai vai o cód unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, Buttons, Menus, Mask; type TForm1 = class(TForm) txtProduto: TLabeledEdit; txtQuantidade: TLabeledEdit; LV: TListView; Label1: TLabel; lblTotalGeral: TLabel; GroupBox1: TGroupBox; btnAdicionar: TSpeedButton; btnRemover: TSpeedButton; GroupBox2: TGroupBox; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; txtDinheiro: TEdit; txtCheque: TEdit; txtCartaoCredito: TEdit; txtCartaoDebito: TEdit; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; btnFinalizar: TSpeedButton; btnLimpar: TSpeedButton; PopupMenu1: TPopupMenu; RemoverItem1: TMenuItem; txtPrecoUnitario: TEdit; Label11: TLabel; RadioButton1: TRadioButton; RadioButton2: TRadioButton; lblParcela: TLabel; txtParcela: TEdit; calcParcelas: TButton; procedure txtProdutoKeyPress(Sender: TObject; var Key: Char); procedure txtQuantidadeKeyPress(Sender: TObject; var Key: Char); procedure btnAdicionarClick(Sender: TObject); procedure btnLimparClick(Sender: TObject); procedure btnRemoverClick(Sender: TObject); procedure txtPrecoUnitarioKeyPress(Sender: TObject; var Key: Char); procedure RemoverItem1Click(Sender: TObject); procedure txtProdutoChange(Sender: TObject); procedure RadioButton2Click(Sender: TObject); procedure RadioButton1Click(Sender: TObject); procedure calcParcelasClick(Sender: TObject); procedure TButton(); private { Private declarations } public { Public declarations } end; var Form1: TForm1; qtd: double; produto: string; troco,falta,preuni, subtot, tot: double; dinheiro, cheque, credito, debito: double; implementation {$R *.dfm} procedure TForm1.txtProdutoKeyPress(Sender: TObject; var Key: Char); begin IF key = #13 then txtPrecoUnitario.SetFocus; end; procedure TForm1.txtQuantidadeKeyPress(Sender: TObject; var Key: Char); begin IF key = #13 then btnAdicionar.Click; end; procedure TForm1.btnAdicionarClick(Sender: TObject); var L: Tlistitem; begin IF (txtProduto.text = '') or (txtPrecoUnitario.text = '') or (txtQuantidade.Text = '') then begin MessageBox(0,'Um ou mais campos estão em branco!','Erro', MB_ICONEXCLAMATION); txtProduto.setfocus; exit; end else L:= LV.Items.Add; produto:= txtProduto.text; qtd:= strTOfloat(txtQuantidade.Text); preuni:= strTOfloat(txtPrecoUnitario.text); subtot:= (qtd * preuni); L.Caption:= produto; L.SubItems.Add(floatTOstr(qtd)); L.SubItems.Add(floatTOstr(subtot)); txtProduto.Clear; txtPrecoUnitario.clear; txtQuantidade.clear; end; procedure TForm1.btnLimparClick(Sender: TObject); begin if MessageBox (Application.Handle, Pchar ('Deseja limpar todos os campos ?'), 'Limpar Campos', MB_YESNO+MB_DEFBUTTON2) = idYes then begin txtProduto.clear; txtPrecoUnitario.clear; txtQuantidade.clear; txtCartaoCredito.Clear; txtCartaoDebito.Clear; txtCheque.Clear; txtDinheiro.clear; LV.clear; end else exit; end; procedure TForm1.btnRemoverClick(Sender: TObject); begin RemoverItem1Click(self); exit; end; procedure TForm1.txtPrecoUnitarioKeyPress(Sender: TObject; var Key: Char); begin IF key = #13 then txtQuantidade.SetFocus; end; procedure TForm1.RemoverItem1Click(Sender: TObject); begin IF not assigned(LV.Selected) then begin MessageBox(0,'Selecione um Item','Erro',MB_ICONEXCLAMATION); exit; end else LV.Selected.Destroy; end; procedure TForm1.txtProdutoChange(Sender: TObject); begin txtProduto.CharCase:=ecUpperCase; end; procedure TForm1.RadioButton2Click(Sender: TObject); begin txtParcela.Visible:=true; lblParcela.Visible:=true; end; procedure TForm1.RadioButton1Click(Sender: TObject); begin txtParcela.Visible:=false; lblParcela.Visible:=false; end; procedure TForm1.calcParcelaClick(Sender: TObject); begin calcParcela(); end; procedure calcParcela(); begin if strTOint(txtParcela) > 1 then begin end; else showmessage('Número de parcelas inválido'); end; end; end. Compartilhar este post Link para o post Compartilhar em outros sites
Marcelo R Moura 0 Denunciar post Postado Junho 1, 2009 Aninha, você tem q declarar sua procedure calcParcela, lá em cima, de preferencia dentro da diretiva PRIVATE... só colocar assim procedure calcParcela(); Compartilhar este post Link para o post Compartilhar em outros sites