Example #1
0
        public OknoEgzaminu(BazaDanych bazaDanych)
        {
            InitializeComponent();
            this.bazaDanych = bazaDanych;

            zegar = (object sender, EventArgs e) =>
            {
                timer--;
                czas.Text = string.Format("{0:00}:{1:00}", (timer / 60), (timer % 60));
                if (timer == 0)
                {
                    ZakonczEgzamin();
                }
            };

            dispatcherTimer          = new DispatcherTimer();
            dispatcherTimer.Tick    += zegar;
            dispatcherTimer.Interval = new TimeSpan(0, 0, 1);

            timer     = bazaDanych.Ustawienia.CzasEgzaminu * 60 > 3600 ? 3600 : bazaDanych.Ustawienia.CzasEgzaminu * 60;
            czas.Text = string.Format("{0:00}:{1:00}", (timer / 60), (timer % 60));
            dispatcherTimer.Start();

            OtworzPytanie(0);
        }
Example #2
0
        public static BazaDanych WczytajBaze(string lokalizacja)
        {
            BazaDanych bazaDanych = null;

            using (StreamReader sr = new StreamReader(lokalizacja, Kodowanie))
            {
                bazaDanych            = new BazaDanych();
                bazaDanych.Ustawienia = new UstawieniaBazy(sr.ReadLine(), sr.ReadLine(), sr.ReadLine(), byte.Parse(sr.ReadLine()), byte.Parse(sr.ReadLine()))
                {
                    Lokalizajca = lokalizacja
                };

                int    liczbaPytan       = int.Parse(sr.ReadLine());
                bool[] wylosowanePytania = LosujPytania(liczbaPytan, bazaDanych.Ustawienia.LiczbaPytanEgzaminacyjnych);

                for (int i = 0; i < liczbaPytan; ++i)
                {
                    if (wylosowanePytania[i])
                    {
                        Pytanie pytanie = new Pytanie(sr.ReadLine(), (TrybPytania)Enum.Parse(typeof(TrybPytania), sr.ReadLine()));
                        bazaDanych.Pytania.Add(pytanie);

                        int liczbaOdpowiedzi = int.Parse(sr.ReadLine());
                        for (int j = 0; j < liczbaOdpowiedzi; ++j)
                        {
                            pytanie.Odpowiedzi.Add(new Odpowiedz(sr.ReadLine(), Boolean.Parse(sr.ReadLine())));
                        }
                    }
                }
            }
            return(bazaDanych);
        }
Example #3
0
        public void WybranoBaze(string lokalizacjaBazyDanych)
        {
            BazaDanych bazaDanych = null;

            try
            {
                bazaDanych = Odczyt.WczytajBaze(lokalizacjaBazyDanych);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
                Application.Current.Shutdown();
            }

            oknoWyborBazy.Visibility = Visibility.Hidden;

            Title        = $"Program TestujÄ…cy: {bazaDanych.Ustawienia.NazwaBazy}";
            TrybProgramu = TrybyProgramu.Egzamin;
            oknoEgzaminu = new OknoEgzaminu(bazaDanych);
            uchwytProgramu.Children.Add(oknoEgzaminu);
        }