Ejemplo n.º 1
0
 /// <summary>
 /// Muodostetaan kysymys ikkunaan, mikäli laskurin arvo on pinenmpi tai yhtäsuuri kuin pituus. Muussa
 /// tapauksessa peli lopetetaan.
 /// </summary>
 private void MuodostaKysymys()
 {
     if (laskuri >= pituus)
     {
         Nayta_Loppu();
     }
     else
     {
         kysymysNyt.muodostaStringistä(kysymykset[laskuri]);
         Kysymys_Label.Text = kysymysNyt.itsekysymys;
         A_Label.Text       = kysymysNyt.vaihtoehtoA;
         B_Label.Text       = kysymysNyt.vaihtoehtoB;
         C_Label.Text       = kysymysNyt.vaihtoehtoC;
         D_Label.Text       = kysymysNyt.vaihtoehtoD;
         Vaihe_Bar.Value    = laskuri;
         laskuri++;
         Vaihe_Label.Text = laskuri + "/" + pituus;
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Luetaan kysymykset kysymykset.txt -tiedostosta ja sijoitetaan ne merkkijonotaulukkoon, mikäli tiedoston rivi ei ala
        /// '*' merkillä tai aiheuta virhettä, kun siitä yritetään muodostaa pelissä käytettävä kysymys olio. Mikäli kysymykset.txt
        /// tiedostoa ei löydy, ohjelma luo uuden kysymkset.txt tiedoston, jossa on ohjeet kysymysten kirjoittamiseen ja yksi esimerkki.
        /// </summary>
        public static void LueTiedostosta()
        {
            int     i     = 0;
            Kysymys testi = new Kysymys();
            string  line;
            string  tiedostonOsoite = HaePolku();

            try
            {
                System.IO.StreamReader file = new System.IO.StreamReader(tiedostonOsoite, System.Text.Encoding.Default, true);
                while ((line = file.ReadLine()) != null)
                {
                    string tarkistettava = line;
                    if (tarkistettava.Substring(0, 1) == "*")
                    {
                        i++;
                        continue;
                    }
                    try
                    {
                        testi.muodostaStringistä(tarkistettava);
                    }
                    catch (Exception)
                    {
                        i++;
                        continue;
                    }
                    KaikkiKysymykset.LisaaKysymys(tarkistettava);
                    i++;
                }
            }
            catch (Exception)
            {
                string[] oletusrivit = { "*Kysymykset on kirjoitettava muodossa: KYSYMYS|VAIHTOEHTO_A|VAIHTOEHTO_B|VAIHTOEHTO_C|VAIHTOEHTO_D|OIKEAN VASTAUKSEN KIRJAIN",
                                         "*Esimerkiksi: Oletko sinä elossa?|Kyllä|En|Ehkä|En tiedä|A",
                                         "Montako vastausvaihtoehtoa tässä kysymyksessä on?|1|2|3|4|D" };
                System.IO.File.WriteAllLines(tiedostonOsoite, oletusrivit, System.Text.Encoding.Default);
                MessageBox.Show("kysymykset.txt tiedostoa ei löytynyt. Ohjelma luo tiedoston, jossa on ohjeet kysymysten kirjoittamiseksi ja yksi esimerkkikysymys", "Tietovisa - Tiedostoa ei löytynyt!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Environment.Exit(0);
            }
        }