none
Código em C# comentado

    Question

  • Olá!
    Em primeiro lugar gostaria de agradecer a atenção de todos!tem sido de grande ajuda!
    Preciso que alguém me ajude a entender o que se passa em cada linha. Pra isso estarei colocando abaixo o código que fizemos em sala de aula, se não for pedir demais, gostaria que alguém pudesse me ajudar com esse código comentando linha por linha.
    Novamente muito obrigada!
    Marcelli

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;

    public partial class Reajuste : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
                txtNomeFunc.Focus();
        }


        protected void btnCalcular_Click(object sender, EventArgs e)
        {

            if (txtSalarioAntigo.Text.Trim().Equals(string.Empty))
            {
                lblMensagem.Text = "favor digitar o salário.";
                txtSalarioAntigo.Focus();
            }

            if (txtReajuste.Text.Trim().Equals(string.Empty))
            {
                lblMensagem.Text = "Favor digitar o % de Reajuste.";
                txtReajuste.Focus();
            }

           
            string caracter = string.Empty;
            string numeros = "0123456789";
            Boolean ok = true;
            for (int i = 0; i < txtSalarioAntigo.Text.Length ; i++)
            {
                caracter = txtSalarioAntigo.Text.Substring(i, 1);
                if (!numeros.Contains(caracter))
                {
                    ok = false;
                    break;
                }
            }

            if(!ok)
            {
                lblMensagem.Text = "Não digite letras campo salário.";
                txtSalarioAntigo.Text = string.Empty;
                txtSalarioAntigo.Focus();
                return;
            }


            double salarioAntigo =
                Convert.ToDouble(txtSalarioAntigo.Text);
            double reajuste = Convert.ToDouble(txtReajuste.Text);
            double salarioNovo = salarioAntigo *(1+(reajuste/100));


            lblMensagem.Text = "O salário reajustado do funcionário "+txtNomeFunc.Text.ToUpper()+" é R$ "+salarioNovo.ToString("###,##0.00");
        }
    }
    Tuesday, August 18, 2009 2:40 AM

All replies

  • Marcelli,
    Eu vou dizer o que a aplicação faz em termos gerais e se você tiver alguma dúvida específica é só perguntar:

    1) A sequencia de linhas com "using" serve para importar bibliotecas que serão utilizadas na classe.
    2) Depois você tem a declaração da classe Reajuste que herda de System.Web.UI.Page, ou seja, é um webform
    3) Logo abaixo você tem o método Page_Load e a única coisa que ele faz é verificar se é a primeira vez que você está acessando o formulário e direciona o foco para o campo nome do funcionário.

    4) Por ultimo você tem um método que é disparado no Click do botão Calcular onde este método faz as seguintes operações:
    - Validar se o salário antigo foi preenchido
    - Validar se o percentual de reajuste foi preenchido
    - Depois é feita uma validação para verificar se foi digitado número no salário. Poderia substituir aquele monte de código pelo método int.TryParse();
    - Por fim, o salário é convertido para um tipo número onde o cálculo de reajuste é feito e o novo salário é exibido em uma label

    Você tem alguma dúvida específca?

    Abraços
    André Dias
    ALM, VSTS, Processos, QA e muito mais em http://blogs.msdn.com/andredias
    Monday, August 24, 2009 10:03 PM