Najprej poiščemo pretvorbe med enotami palec, čevelj in jard. To damo v tabelo.
private double vnesenoStevilo;
//pretvobe iz ene valute v drugo.
private double[] AngloMere = { 12.000006096, 3.000009144028 };
Nato preverimo ali imamo vsa polja zapolnjena s podatki.
//preverimo ali imamo vse podatke
if ((vnosStevila.Text != "") && (izberiMero.Text != ""))
V primeru, da imamo vse podatke vstavljene pogledamo ali je vstavljen podatek število, ki ga moram pretvoriti.
//preverimo ali imamo število.
if (double.TryParse(vnosStevila.Text, out vnesenoStevilo))
Nato pa pretvorimo število v ostali dve enoti. V primeru, da enota ni palec, čevelj ali jard, pa nam pretvornik javi napako.
double enota1, enota2;
//V primeru da izberemo mero PALEC izračunamo ČEVELJ in JARD
if (izberiMero.Text == "PALEC")
{
izpisMera1.Text = izberiMero.Text + " => ČEVELJ:";
izpisMera2.Text = izberiMero.Text + " => JARD:";
enota1 = vnesenoStevilo / AngloMere[0];
enota2 = enota1 / AngloMere[1];
izpisEnota1.Text = enota1.ToString();
izpisEnota2.Text = enota2.ToString();
}
//V primeru da izberemo mero ČEVELJ izračunamo PALEC in JARD
if (izberiMero.Text == "ČEVELJ")
{
izpisMera1.Text = izberiMero.Text + " => PALEC:";
izpisMera2.Text = izberiMero.Text + " => JARD:";
enota1 = vnesenoStevilo * AngloMere[0];
enota2 = vnesenoStevilo / AngloMere[1];
izpisEnota1.Text = enota1.ToString();
izpisEnota2.Text = enota2.ToString();
}
//V primeru da izberemo mero JARD izračunamo ČEVELJ in PALEC
if (izberiMero.Text == "JARD")
{
izpisMera1.Text = izberiMero.Text + " => PALEC:";
izpisMera2.Text = izberiMero.Text + " => ČEVELJ:";
enota1 = vnesenoStevilo * AngloMere[0];
enota2 = enota1 * AngloMere[1];
izpisEnota1.Text = enota2.ToString();
izpisEnota2.Text = enota1.ToString();
}
//V vseh ostalih primerih javimo napako
if((izberiMero.Text!="JARD")&&(izberiMero.Text!="ČEVELJ")&&(izberiMero.Text!="PALEC"))
{
NapakaNiMera nova = new NapakaNiMera();
if (nova.ShowDialog() == DialogResult.OK)
{//zbrišemo napačen vnos
izberiMero.Text = "";
}
}
}
Če pa nismo vnesli števila v pretvornik pa nam javi napako.
else
{//Javimo napako če ne vnesemo števila.
NapakaNiStevilo nov = new NapakaNiStevilo();
if (nov.ShowDialog() == DialogResult.OK)
{//zbrišemo napačen vnos
vnosStevila.Text = "";
}
V primeru da nimamo vstavljenih vseh poodatkov pa nam pretvornik pove, da nismo vstavili vseh podatkov.
else
{//Javimo napako, v primeru, da nimamo vnesenih vseh podatkov
NapakaNiPodatkov nova = new NapakaNiPodatkov();
nova.ShowDialog();
}
}
Ob zagonu pretvornika pa izbrišemo besedila z nekaterih oken.
private void Form1_Load(object sender, EventArgs e)
{//kjer izpišemo rezultate nastavimo tekst, tako da nič ne piše.
izpisEnota1.Text = "";
izpisEnota2.Text = "";
izpisMera1.Text = "";
izpisMera2.Text = "";
}
Dodamo pa še gumb s katerim izbrišemo vnesene podatke.
oken.
private void poenostavi_Click(object sender, EventArgs e)
{
//vse vrednosti nastavimo na prazno-
vnosStevila.Text = "";
izberiMero.Text = "";
izpisEnota1.Text = "";
izpisEnota2.Text = "";
izpisMera1.Text = "";
izpisMera2.Text = "";
}