Программирование на С++ - eDrive
Программирование на С++ - eDrive Программирование на С++ - eDrive
28 Рекомендации 1. Разработка интерфейса пользователя. Создать проект и разместить в форме необходимые поля для ввода данных, кнопки Расчет и Отчет и элемент управления Chart с вкладки Additional. В редакторе свойства Series- List элемента управления Chart нажать кнопку Add столько раз, сколько серий диаграммы должно быть выведено на экран. Здесь же полезно воспользоваться кнопкой Title, чтобы подписать каждую кривую. Оси распределяются между сериями диаграммы на вкладке Series в разделе General 2. Разработка функций. В файле кода формы объявить требуемые функции. Программировать эти функции и обработчик кнопки Расчет, перенося необходимые фрагменты текста из технического задания и редактируя их. 3. Построение диаграмм. В класс формы добавить функцию построения диаграммы и определить ее в файле кода формы, используя метод AddXY компонента Series, например: void TmyForm1::myPlot (double point, double time) { Series1–>AddXY (time, point); } Вызовом этой функции завершать каждую итерацию расчета. 4. Формирование отчета. Выбрать в меню File команду New и на вкладке New открыть Report. Подключить отчет к форме и форму к отчету (File.Include Unit Hdr…). В списке свойств отчета Bands установить в true свойство HasTitle, а в свойстве ReportTitle указать имя автора, группу и вариант. С вкладки QReport панели компонентов поместить в заголовок отчета два элемента управления QRSysData и инициализировать свойство Data первого из них константой qrsReportTitle, а второго – константой qrsDate. Полосу данных занять элементом управления QRImage. В редакторе свойства Chart элемента управления QRChart кнопкой Add добавить необходимое число серий диаграммы Series. 5. Управление отчетом. Подготовить обработчик события отчета OnNeed- Data, в котором свойство Chart диаграммы отчета инициализировать диаграммой из формы, а каждую серию диаграммы отчета – соответствующей серией диаграммы формы. Открывать отчет из главной формы с использованием метода Preview, например: void __fastcall TQuickReport1::QuickRepNeedData (TObject *Sender, bool &MoreData) { QRChart1–>Chart–>Assign (myForm1–>Chart1);
29 Series1–>Assign (myForm1–>Series1); } void __fastcall TmyForm1::Button2Click (TObject *Sender) { QuickReport1–>Preview (); } Задачи 1. Используя метод Clear компонента Series, предоставить пользователю возможность пересчета данных с обновлением диаграммы при повторном нажатии кнопки Расчет. 2. Организовать проверку корректности исходных и расчетных данных, используя константы MAXDOUBLE и MINDOUBLE или MAXFLOAT и MIN- FLOAT из файла заголовка values.h. 3. Организовать защиту программы от аварийного завершения, используя механизм обработки исключений. 4. Выполнить сохранение исходных данных в текстовом файле и чтение их из файла с помощью компонентов TStringList, TSaveDialog и TOpenDialog. Работа 12. Наследование Задание Для освоения техники взаимодействия базовых и производных классов создать проект, в котором вначале реализовать базовый (Shape) и производный (Circle) классы по данному ниже описанию. Затем разработать собственный производный класс фигуры, заданной в табл. 1, c теми же методами, что и Circle: рисованием, закрашиванием и перемещением. Рекомендации 1. Базовый класс. Для создания классов в дополнение к форме ввести в проект новый модуль (Unit) из библиотеки шаблонов (File.New) и подключить (File.Include Unit Hdr…) его к форме, а форму – к нему. В файле заголовка модуля объявить абстрактный базовый класс Shape: class Shape { protected: TColor penColor, brushColor; public: Shape (TColor p, TColor b) { penColor = p; brushColor = b; } virtual void Draw () = 0; virtual void Move (int x, int y) = 0; virtual void Fill () = 0; static void Clear (); };
- Page 1 and 2: Федеральное агентс
- Page 3 and 4: Содержание Общие т
- Page 5 and 6: Кнопка управления
- Page 7 and 8: { for (int i = 0; i < gridRows; ++i
- Page 9 and 10: 9 void MySwap (double &a, double &b
- Page 11 and 12: 11 Для статистическ
- Page 13 and 14: 13 Задачи 1. Заменить
- Page 15 and 16: double stat = *max_element (myVecto
- Page 17 and 18: 17 подготовленным п
- Page 19 and 20: 19 for (int i=0; iColCount; ++i) f
- Page 21 and 22: 21 ADO панели визуаль
- Page 23 and 24: 23 В этом фрагменте
- Page 25 and 26: TImage *im; TSearchRec sr; 25 Ин
- Page 27: 27 Работа 11. Програм
- Page 31 and 32: 31 а в деструкторе у
- Page 33 and 34: 33 ка. Методы Lock и Unloc
- Page 35 and 36: 35 Рекомендации 1. Ст
- Page 37 and 38: 37 10. Подключение сп
- Page 39 and 40: 39 требуемый заголо
28<br />
Рекомендации<br />
1. Разработка интерфейса пользователя. Создать проект и разместить в<br />
форме необходимые поля для ввода данных, кнопки Расчет и Отчет и элемент<br />
управления Chart с вкладки Additional. В редакторе свойства Series-<br />
List элемента управления Chart <strong>на</strong>жать кнопку Add столько раз, сколько серий<br />
диаграммы должно быть выведено <strong>на</strong> экран. Здесь же полезно воспользоваться<br />
кнопкой Title, чтобы подписать каждую кривую. Оси распределяются<br />
между сериями диаграммы <strong>на</strong> вкладке Series в разделе General<br />
2. Разработка функций. В файле кода формы объявить требуемые функции.<br />
Программировать эти функции и обработчик кнопки Расчет, перенося необходимые<br />
фрагменты текста из технического задания и редактируя их.<br />
3. Построение диаграмм. В класс формы добавить функцию построения диаграммы<br />
и определить ее в файле кода формы, используя метод AddXY<br />
компонента Series, <strong>на</strong>пример:<br />
void TmyForm1::myPlot (double point, double time)<br />
{ Series1–>AddXY (time, point); }<br />
Вызовом этой функции завершать каждую итерацию расчета.<br />
4. Формирование отчета. Выбрать в меню File команду New и <strong>на</strong> вкладке<br />
New открыть Report. Подключить отчет к форме и форму к отчету<br />
(File.Include Unit Hdr…). В списке свойств отчета Bands установить в true<br />
свойство HasTitle, а в свойстве ReportTitle указать имя автора, группу и вариант.<br />
С вкладки QReport панели компонентов поместить в заголовок отчета<br />
два элемента управления QRSysData и инициализировать свойство<br />
Data первого из них константой qrsReportTitle, а второго – константой<br />
qrsDate. Полосу данных занять элементом управления QRImage. В редакторе<br />
свойства Chart элемента управления QRChart кнопкой Add добавить<br />
необходимое число серий диаграммы Series.<br />
5. Управление отчетом. Подготовить обработчик события отчета OnNeed-<br />
Data, в котором свойство Chart диаграммы отчета инициализировать диаграммой<br />
из формы, а каждую серию диаграммы отчета – соответствующей<br />
серией диаграммы формы. Открывать отчет из главной формы с использованием<br />
метода Preview, <strong>на</strong>пример:<br />
void __fastcall TQuickReport1::QuickRepNeedData (TObject *Sender,<br />
bool &MoreData)<br />
{ QRChart1–>Chart–>Assign (myForm1–>Chart1);