Podam moją koncepcję rozwiązania problemu. Najlepiej utworzyć jeden plik z pytaniami.
np. fizyka3.txt, nazwę fizyka3 wyświetlić w okienku - wiemy co załadowaliśmy do pamięci. A teraz zawartość pliku:
1 Jak na imię miał Einstein?0 Edmund0 Alfred1 Albert0 Adalbert2 Który wzór jest prawdziwy?0 E=m*c1 E=m*c*c0 E=m*c*c/20 E=m*c*c*cJedno pytanie to jedna linia.Cztery odpowiedzi to cztery linie.Razem 5 linii. Wyswietlać zawartość od drugiego znaku.
Dokładniej: znaleźć pierwsze wystąpienie spacji w String.To co na prawo wyświetlić. Z tego co na lewo wyciągnąć albo numer pytania, albo informacje, która odpowiedź jest prawdziwa. Dla każdej z odpowiedzi wygenerować kolejno A B C D. Button potwierdzający odpowiedź niech tylko uruchamia wspólną procedurę np. Sprawdzaj(k) , gdzie k oznacza numer naciśniętego Button: A-1,B-2,C-3,D-4. Procedura Sprawdzaj zawiera porównanie if(rowne)przysłanego przez Button parametru z tym odczytanym z pliku, dokonuje zwiększenia licznika poprawnych odpowiedzi,ShowMessage(good); else ShowMessage(bad); na koniec memo.clear; Wcześniej trzeba ustawić zmienną int np.poprawna, która pamięta numer poprawnej odpowiedzi.Zrobić to przy czytaniu każdej z czterech odpowiedzi.Potrzebny jest mały licznik liczący do czterech wiersze odpowiedzi. Który wiersz odpowiedzi ma jedynkę na początku ten ma prawo ustawić swoją wartością licznik poprawna. ---------Dalej... wygląda na to,że button5 powinien przeczytać tylko 5linii i oddać sterowanie użytkownikowi, który udzieli odpowiedzi. Nie możemy teraz jeszcze raz nacisnąć button5, bo jeszcze raz otworzymy ten sam plik i ustawimy się na jego początku. Proponuje powołać do życia nową zmienną boolean o nazwie pierwszyraz i ustawić ją na true. Tam gdzie czytasz plik:if(pierwszyraz) otworzyć plik,reset(plik), ustawić pierwszyraz na false. Celowo nie piszę kodu, bo nie chcę Ci odbierać radości z twórczego działania.