Hercles Posted August 9, 2013 at 03:27 AM Report #521303 Posted August 9, 2013 at 03:27 AM (edited) Caros, criei um botão no formulario que só segue se eu clicar duas vezes... Como eu faço pra que no primeiro click ele va pro outro formulario (levando dados). 1º formulário (botão) este funciona normal com um click. procedure Tfrmprincipal.btnpagvistaClick(Sender: TObject); begin if (txtnome.text='') or (masnasc.text='') or (txtmedicamento.text='') or (txtpbruto.text='') then begin showmessage(' Nome, Data de Nasc, Medicamento e Preço Bruto devem ser preenchidos!'); end; nome:= txtnome.text; medicamento:= txtmedicamento.text; datanasc:= strtodate(masnasc.text); pbruto:=strtocurr(txtpbruto.text); dias:= date-datanasc; idade:= dias div 365; frmpagvista.txtnome.text:=nome; frmpagvista.txtidade.text:= inttostr(idade); frmpagvista.txtpbruto.text:=currtostr(pbruto); frmpagvista.showmodal; if frmpagvista.ShowModal=mrYes then begin // vai buscar os dados da pagvista que são precisos na frmpricipal desconto:= strtoint(frmpagvista.txtdesconto.text); frmprincipal.txtdesconto.text:= inttostr(desconto); pliquido:= strtocurr(frmpagvista.txtpliquido.text); imposto:= pliquido*0.15; frmprincipal.txtimposto.text:= currtostr(imposto); ppagar:=imposto+pliquido; frmprincipal.txtppagar.text:=currtostr(ppagar); frmprincipal.txtacrescimo.text:='Não'; end; end; 2º formulário (este que só funciona com dois clickes). procedure Tfrmpagvista.btnconcluiClick(Sender: TObject); begin ModalResult:=mrYes; end; Grato. Grato 🙂 :) Edited August 9, 2013 at 07:58 AM by nunopicado Adicionadas tags GeShi - Hercles: Analisa o teu post e vê o que tens antes e depois do teu código...
nunopicado Posted August 9, 2013 at 08:00 AM Report #521311 Posted August 9, 2013 at 08:00 AM . . . frmpagvista.showmodal; if frmpagvista.ShowModal=mrYes then begin . . . Repara no teu código... Estás a chamar a form frmpagvista duas vezes... Só podes usar o ShowModal uma vez, no caso, a segunda.... Remove a linha frmpagvista.showmodal; "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Hercles Posted August 9, 2013 at 12:11 PM Author Report #521344 Posted August 9, 2013 at 12:11 PM (edited) Feito!!! Ficou certinho!!!! valeu amigos pela força, consegui terminar o projetinho da faculdade.... Ah... como vai ficar exposto estas informações pra outros usuario lerem, então vou deixar um codigo aqui que eu tinha feito de modo errado porque esta já muito estressado...rsrsr segue: exemplo de quero 10% do valor lliquido e vou depois subtrair do valor bruto, posso fazer este raciocinio. procedure Tfrmpagvista.txtdescontoChange(Sender: TObject); begin if txtdesconto.text<>'' {metodo pra força a autualização no campo txtpliquido} then begin desconto:=StrToFloat(txtdesconto.text); {aqui entraria o valor 10 um valor real} desconto:= desconto/100 {aqui entraria o valor 0,10, ou seja, 10%} end else Desconto:=0; PLiquido:=strtocurr(txtpbruto.text)-(strtocurr(txtpbruto.text)*desconto); {aqui entraria pbruto - (pbruto*0.10)} txtpliquido.text:= currtostr(pliquido); end; Edited August 9, 2013 at 12:51 PM by nunopicado Correcção de tags de cor dentro do código!
nunopicado Posted August 9, 2013 at 12:52 PM Report #521346 Posted August 9, 2013 at 12:52 PM Muito bem... Dúvidas futuras, fica à vontade! "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now