Иллюстрированный самоучитель по C++ Builder

Текст программы

bool GetVopros(TVopros *v)
{
AnsiString st;
int p; // если р=1, то к вопросу есть иллюстрация
if (GetStringtf, &(v › Vopr))!= 0) {
// прочитать кол-во вариантов ответа, номер правильного ответа
// и признак наличия иллюстрации
v › nOtv = Getlnt(f);
v › rOtv = Getlnt(f);
p = Getlnt(f);
if (p)
// к вопросу есть иллюстрация
GetString(f,&(v › Img)); else v › Img = "";
// читаем варианты ответа
for(int i = 0;i < v › nOtv; i++)
{
GetString(f,&(v › 0tv[i])); }
return true; }
else return false;
}
// выводит вопрос
void __fastcall TForml::ShowVopros(TVopros v)
{
int top; int i;
// вопрос
Labell › Width = ClientWidth – Labell › Left – 20;
Labell › Caption = v.Vopr;
Labell › AutoSize = true;
if (v.Img!= //к вопросу есть иллюстрация {
/* определим высоту области,
которую можно использовать для вывода иллюстрации */
int RegHeight = Buttonl › Top
 – (Labell-ХГор + Labell › Height +10) // область вывода вопроса
 – (RadioButton[l] › Height + 10) * v.nOtv;
Image1 › Top = Labell › Top + Labell › Height + 10;
// загрузим картинку и определим ее размер
Image1 › Visible = false;
Image1 › AutoSize = true;
Image1 › Picture › LoadFromFile(v.Img);
if (Imagel › Height > RegHeight)
 // картинка не помещается
(
Image1 › AutoSize = false;
Imagel › Height = RegHeight;
Imagel › Proportional = true;)
Image1 › Visible = true;
// положение полей отсчитываем от иллюстрации
top = Imagel-ХГор + Imagel › Height + 10;)
else // положение полей отсчитываем от вопроса
top = Labell-ХГор + Labell › Height + 10;
// варианты ответа
for (i =0; i < v.nOtv; i++)
{
RadioButton[i] › Top = top;
RadioButton[i] › Caption = v.0tv[i];
RadioButton[i] › Visible = true;
RadioButton[i] › Checked = false;
top += 20; }
}
// щелчок на радиокнопке выбора ответа
void__fastcall TForml::RadioButtonClick(TObject *Sender)
{
int 1=0;
while (! RadioButton[i] › Checked) 1++;
otv = 1+1;
// ответ выбран, сделаем доступной кнопку Дальше
Buttonl › Enabled = true; }
// удаляет вопрос с экрана
void __fastcall TForml::EraseVopros(void)
{
Imagel › Visible = false;
// скрыть поле вывода иллюстрации
// скрыть поля выбора ответа for (int i=0; i <4; i++) (
RadioButton[i] › Visible = false;
RadioButton[i] › Checked = false; }
Button1 › Enabled = false;
 // сделать недоступной кнопку Дальше }
// щелчок на кнопке ОК/Дальше/ОК
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.