Delphi. Учимся на примерах
Шрифт:
type TForm1 = class(TForm)
Memo1: TMemo;
RadioGroup1: TRadioGroup;
p1: TPanel;
p2: TPanel;
p3: TPanel;
p4: TPanel;
p5: TPanel;
an1: TRadioButton;
an2: TRadioButton;
an3: TRadioButton;
an4: TRadioButton;
Label1: TLabel;
Label2: TLabel;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
Open1: TOpenDialog;
procedure FormCreate(Sender: TObject);
procedure p1Click(Sender: TObject);
procedure p2Click(Sender: TObject);
procedure p3Click(Sender: TObject);
procedure p4Click(Sender: TObject);
procedure p5Click(Sender: TObject);
procedure Image1Click(Sender: TObject);
procedure p1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p2MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p3MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p4MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p4MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p5MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure p5MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
procedure start; //начало теста
procedure question_select; //выбор вопроса
procedure vars(var variant: integer); {сортировка и определение правильного варианта ответа}
procedureverno; {проверка: правильно ли ответил пользователь}
public
{ Public declarations }
end;
var
Form1: TForm1;
i, a, n, balls, vopr: integer; {различные счетчики и переменные для подсчета баллов}
dir, dir2, ss, zz, yes: string; {путь к файлу с вопросами, к программе и расшифрованной базе}
win: TIniFile; //переменная для работы с ini-файлами
mass: array[1..100] of integer; {содержит номера уже заданных вопросы, чтобы они не повторялись}
f1, f2: file of char; //переменные для работы с файлами
сор: char; //для работы с каждым символом отдельно
implementation
{$R *.dfm}
procedure TForm1.vars(var variant: integer);
begin
//вызываем процедуру выбора случайного вопроса question_select;
case variant of
1:
begin
Win:= TIniFile.Create(dir2); //открываем ini-файл
//считываем вопрос
Memo1.Text:= Win.ReadString('Q', IntToStr(a), Memo1.Text);
//считываем правильный вариант ответа
an1.Caption:= Win.ReadString('A', IntToStr(a), an1.Caption);
//считываем три неверных варианта к данному вопросу
an2.Caption:= Win.ReadString('W1', IntToStr(a), an2.Caption);
an3.Caption:= Win.ReadString('W2', IntToStr(a), an3.Caption);
an4.Caption:= Win.ReadString('W3', IntToStr(a), an4.Caption);
Win.Free; //освобождаем ini-файл
//помечаем первый вариант как правильный
yes:= an1.Caption;
end;
2:
begin
Win:= TIniFile.Create(dir2);
Memo1.Text:= Win.ReadString('Q', IntToStr(a), Memo1.Text);
an2.Caption:= Win.Readstring('A', IntToStr(a), an2.Caption);
an1.Caption:= Win.Readstring('W1', IntToStr(a), an1.Caption);
an3.Caption:= Win.ReadString('W2', IntToStr(a), an3.Caption);
an4.Caption:= Win.ReadString('W3', IntToStr(a), an4.Caption);
Поделиться:
Популярные книги
На границе империй. Том 9. Часть 2
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
Убивать чтобы жить 5
5. УЧЖ
Фантастика:
боевая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Тактик
2. Офицер
Фантастика:
альтернативная история
7.70
рейтинг книги
Тринадцатый VI
6. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Шайтан Иван
1. Шайтан Иван
Фантастика:
боевая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Снега
Поэзия:
драматургия
5.00
рейтинг книги
Волкодав
1. Волкодав
Фантастика:
фэнтези
героическая фантастика
9.46
рейтинг книги
Газлайтер. Том 3
3. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Я все еще граф. Книга IX
9. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Развод в 45. От любви до ненависти
6. Развод
Любовные романы:
остросюжетные любовные романы
5.40
рейтинг книги
Analyste
Аналитик
Фантастика:
социально-философская фантастика
юмористическая фантастика
6.57
рейтинг книги
Тринадцатый XIII
13. Видящий смерть
Фантастика:
городское фэнтези
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Я все еще не царь. Книга XXVI
26. Дорогой барон!
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Древесный маг Орловского княжества
1. Орловское княжество
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00