- •Проект приложения № 7.
- •2. Поменяйте заголовок (Caption) формы с «Forml» на «Биржа ценных бумаг» и увеличьте размеры формы.
- •3. Откажитесь от возможности менять размеры окна программы, указав значение bsDialog свойства BorderStyle формы.
- •4. Сохраните выполненную на данный момент форму в своей папке.
- •5. Расположите в нижней части формы две пиктографических кнопки типа SpeedButton и командную кнопку окончания работы программы BitBtn (см. Макет на рис. 1 и окно рабочей программы на рис. 2).
- •6. Вставьте в форму три таблицы текстовых строк StringGrid (см. Рис.3, 4).
- •9. Запрограммируйте кнопки SpeedButtonl и SpeedButton2 следующим образом:
- •10. В окне текста программы Unit1.Cpp введите описание метода Refresh() формы.
- •11. Запрограммируйте процедуру создания формы FormCreate.
- •12. Сохраните выполненную на данный момент работу в своей папке.
- •15. Создайте ехе-файл программы.
- •17. Продемонстрируйте созданную форму преподавателю. Закончите работу.
12. Сохраните выполненную на данный момент работу в своей папке.
13. Запрограммируйте событие ввода/редактирования текста в таблицу StringGrid2 так, чтобы в момент ввода денежных сумм в первую и вторую ячейки в третьей ячейке отображался остаток капитала (поскольку каждый год инвестируют весь имеющийся капитал).
Активизируйте объект StringGrid2 и в окне Object Inspector откройте закладку Events этого объекта. Здесь следует выбрать событие, для которого вы хотите описать последовательность действий — реакцию на событие. Выберите событие OnSetEditText (ЕслиТекстРедактируется) и дважды щелкните в поле справа от неё. Откроется окно программы с заготовкой процедуры. Заполните ее следующим образом:
void __fastcall TForm1:: StringGrid2SetEditText (TObject *Sender )
{
int i ;
for(i=0;i<1;i++)
if (StringGrid2->Cells[0][i+1]!=””) money[i]=StrToInt(StringGrid2->Cells[0][i+1]);
else money[i]=0;
money[2] := capital - money[0] - money[l];
StringGrid2.Cells[0][3] := IntToStr(money[2]);
SpeedButton1->Enabled=true;
}
Замечание. Заготовки для событий-процедур каждого объекта можно вызвать, дважды щелкая по объекту на макете формы, как это делалось для кнопок. Для большинства объектов это событие - OnClick (ЕслиЩелкнуть), в том числе и для StringGrid. Поэтому мы были вынуждены «вручную» выбрать нужный для нашего случая тип события — OnSetEditText.
Запустите созданную программу и исследуйте ее работу.
Введите денежные суммы инвестиций в ячейки для первого и второго предприятий и наблюдайте за изменением третьей суммы. Убедитесь в ее правильности. Щелкните на кнопке «Биржевые результаты», просмотрите результаты финансового года, щелкните на кнопке «Следующий год». Сыграйте в эту игру несколько раз и закончите работу программы, щелкнув на кнопке «Выход».
15. Создайте ехе-файл программы.
16. Закройте Bilder C++, запустите созданную программу, сыграйте и попробуйте достичь хороших результатов.
17. Продемонстрируйте созданную форму преподавателю. Закончите работу.
Задача 4.1. Информационную надпись «Прибыль (убыток) на конец/года составляет» поменяйте на «Прибыль на конец года составляет» или «Убыток на конец года составляет» в зависимости от того возрос или уменьшился, капитал игрока в конце года по сравнению с начальным.
Задача 4.2. Обеспечьте вывод денежной суммы прибыли зеленым цветом, а убытка — красным.
Задача 4.3. Не дайте возможности игроку ввести отрицательные денежные суммы в таблицу инвестиций.
Задача 4.4. Вычислите и выведите в форме все денежные суммы с точностью до цента.