Help - Modify formula when changing radiobutton

Asked

Viewed 34 times

0

Hello, developers!

I need help with my MRU calculation program.

When I input the data with the meter/seconds radio button active, and then select on the km/h radio button it converts the data correctly.

Already when I am in km/h, and I click on the radio button meters/seconds, it is not doing the conversion...

Design do programa

private void radMetrosSegundos_CheckedChanged(object sender, EventArgs e)
{
    lblEspacoInicialMedida.Text = "metros";
    lblVelocidadeMedida.Text = "metros/segundos";
    lblTempoMedida.Text = "segundos";
    lblEspacoFinalTipo.Text = "metros";
    /* Essa é a formula mais não funciona quando eu clico em metros /segundos.
    numEspacoInicial.Value = numEspacoInicial.Value * 1000; // KM para metro
    numTempo.Value = numTempo.Value * 3600; // hora para segundos
    numVelocidade.Value = numVelocidade.Value / Convert.ToDecimal(3.6); //segundos para hora
    */
}

private void radKMH_CheckedChanged(object sender, EventArgs e)
{
    lblEspacoInicialMedida.Text = "Km";
    lblVelocidadeMedida.Text = "Km/h";
    lblTempoMedida.Text = "Horas";
    lblEspacoFinalTipo.Text = "Km";

    //Aqui funciona corretamente
    numEspacoInicial.Value = numEspacoInicial.Value / 1000; // Metro para KM
    numTempo.Value = numTempo.Value / 3600; // segundos para hora
    numVelocidade.Value = numVelocidade.Value * Convert.ToDecimal(3.6); // m/s para km/h
}

Thanks in advance!

  • At first the function is correct. Check if the event 'radMetrosSegundos_CheckedChanged' is related to Radiobutton.

1 answer

0

You can check which radiobutton is checked and depending on the radiobutton makes the changes and all this just in a void, using a radioButton.Checked, forget the void radMetrosSegundos_CheckedChange leave it worthless, but do not exclude it because it will lead to errors.

private void radKMH_CheckedChanged(object sender, EventArgs e)
{
    if(radKMH.Checked)
    {
        lblEspacoInicialMedida.Text = "Km";
        lblVelocidadeMedida.Text = "Km/h";
        lblTempoMedida.Text = "Horas";
        lblEspacoFinalTipo.Text = "Km";

        //Aqui funciona corretamente
        numEspacoInicial.Value = numEspacoInicial.Value / 1000; // Metro para KM
        numTempo.Value = numTempo.Value / 3600; // segundos para hora
        numVelocidade.Value = numVelocidade.Value * Convert.ToDecimal(3.6); // m/s para km/h
    }
    else if(radMetrosSegundos.Checked)
    {
        lblEspacoInicialMedida.Text = "metros";
        lblVelocidadeMedida.Text = "metros/segundos";
        lblTempoMedida.Text = "segundos";
        lblEspacoFinalTipo.Text = "metros";
        numEspacoInicial.Value = numEspacoInicial.Value * 1000; // KM para metro
        numTempo.Value = numTempo.Value * 3600; // hora para segundos
        numVelocidade.Value = numVelocidade.Value / Convert.ToDecimal(3.6); //segundos para hora
    }
}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.