44428

Разнообразные формы с часами

Дипломная

Информатика, кибернетика и программирование

Улучшенная совместимость с Delphi. Редакция ориентирована на разработчиков ПО создающих приложения на Windows с использованием двух языков программирования C и Delphi. После этого разработчики из Microsoft существенно изменили направление развития данной технологии Третий язык программирования Delphi. Реализация среды разработки проектом Lzrus Free Pscl компиляция в режиме совместимости с Delphi позволяет использовать его для создания приложений на Delphi для таких платформ как Linux Mc OS X и Windows CE.

Русский

2013-11-12

1.33 MB

1 чел.

Министерство образования и науки Российской Федерации Государственное образовательное учреждение

среднего специального образования

КОНАКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ КОЛЛЕДЖ

КУРСОВОЙ ПРОЕКТ

по дисциплине: «Технологии программирования»

по специальности: 230103 «Автоматизированные системы обработки информации и управления»

тема: «Разнообразные формы с часами»

    Руководитель        Кузнецова Е.Е.

                                                                                    

Разработал студент группы   230103-1-08   Кадиров А.А.                                         

Конаково 2011


ЗАДАНИЕ


СОДЕРЖАНИЕ

ВВЕДЕНИЕ

  1.  ТЕОРИТИЧЕСКАЯ ЧАСТЬ
    1.  ПОСТАНОВКА ЗАДАЧ
    2.  ВЫБОР СРЕДЫ РАЗРАБОТКИ
    3.  РАССМОТРЕНИЕ АНАЛОГОВЫХ ПРОДУКТОВ
  2.  ТЕХНИЧЕСКАЯ ЧАСТЬ
    1.  ФУНКЦИОНАЬНАЯ СПЕЦИФИКАЦИЯ
    2.  ТЕХНИЧЕСКИЙ ПРОЕКТ
    3.  ОТДЕЛЬНЫЕ АЛГОРИТМЫ И ПЕРЕМЕННЫЕ
    4.  ЛИСТИНГ ПРОГРАММЫ
    5.  ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА
    6.  ПРОЕКТИРОВАНИЕ СПРАВКИ
    7.  ТЕСТИРОВАНИЕ
  3.  СЕРТИФИКАЦИЯ ПРОГРАМНОГО ПРОДУКТА
    1.  ОЦЕНКА ПРОГРАМНОГО ПРОДУКТА
    2.  ОФОРМЛЕНИЕ ДОКУМЕНТАЦИИ

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ


ВВЕДЕНИЕ

Современный период развития цивилизованного общества характеризует процесс информатизации.

Информатизация общества – это глобальный социальный процесс, особенность которого состоит в том, что доминирующим видом деятельности в сфере общественного производства является сбор, накопление, продуцирование, обработка, хранение, передача и использование информации, осуществляемые на основе современных средств микропроцессорной и вычислительной техники, а также на базе разнообразных средств информационного обмена. Информатизация общества обеспечивает:

  •  активное использование постоянно расширяющегося интеллектуального потенциала общества, сконцентрированного в печатном фонде, и научной, производственной и других видах деятельности его членов.
  •   интеграцию информационных технологий с научными, производственными, инициирующую развитие всех сфер общественного производства, интеллектуализацию трудовой деятельности.
  •   высокий уровень информационного обслуживания, доступность любого члена общества к источникам достоверной информации, визуализацию представляемой информации, существенность используемых данных.

Применение открытых информационных систем, рассчитанных на использование всего массива информации, доступной в данный момент обществу в определенной его сфере, позволяет усовершенствовать механизмы управления общественным устройством, способствует гуманизации и демократизации общества, повышает уровень благосостояния его членов. Процессы, происходящие в связи с информатизацией общества, способствуют не только ускорению научно–технического прогресса, интеллектуализации всех видов человеческой деятельности, но и созданию качественно новой информационной среды социума, обеспечивающей развитие творческого потенциала индивида.


1. ТЕОРИТИЧЕСКАЯ ЧАСТЬ

1.1 ПОСТАНОВКА ЗАДАЧ

В ходе курсового проекта мне необходимо создать программный продукт, который будет отображать текущее время и будильник. Для упрощения работы пользователя с программой нужно снабдить его справочной информацией, т.е. создать справку понятную пользователю.


 1.2 ВЫБОР СРЕДЫ РАЗРАБОТКИ

Я рассмотрел три языка программирования, первым яз них является C++Builder

 Язык Си - это универсальный язык программирования,  для которого  характерны  экономичность  выражения, современный набор операторов и типов данных.  Язык  Си  не  является  ни языком  "очень  высокого  уровня", ни "большим" языком, и не предназначается для некоторой специальной  области  применения,  но  отсутствие ограничений и общность языка делают его

для многих задач более удобным  и  эффективным,  чем  языки, предположительно более мощные.  Операционная система, компилятор с языка Си и по существу все прикладные программы системы   "ДЕМОС"  написаны на Си.  Язык Си не связан с какими-либо определенными аппаратными средствами или  системами,  и на  нем легко писать программы, которые можно пропускать без изменений на любой ЭВМ, имеющей Си-компилятор.

Язык Си является универсальным языком программирования. Он  первоначально  появился  в  операционной системе UNIX, и развивался как основной язык систем, совместимых с ОС  UNIX. Сам язык , однако, не связан с какой-либо одной операционной системой или машиной; и хотя его называют языком  системного программирования, так как он удобен для написания операционных систем, он  может  использоваться  для  написания  любых

больших  вычислительных  программ,  программ  для  обработки текстов и баз данных.

Язык Си - это язык относительно "низкого уровня".   Это означает,  что Си имеет дело с объектами того же вида, что и большинство ЭВМ, а именно, с символами, числами и  адресами. Они  могут  объединяться  и пересылаться посредством обычных арифметических и логических операций, осуществляемых  реальными ЭВМ.

В языке Си отсутствуют операции,  имеющие  дело  непосредственно  с составными объектами, такими как строки символов, множества, списки или с массивами, рассматриваемыми как целое. Здесь, например, нет никакого аналога операциям PL/1,оперирующим с массивами и строками.  Язык  не  предоставляет

никаких других возможностей распределения памяти, кроме статического определения и  механизма  стеков,  обеспечиваемого локальными переменных функций.  Сам по себе язык Си не обеспечивает никаких возможностей ввода-вывода.  Все  эти  механизмы высокого уровня должны обеспечиваться явно вызываемыми функциями.

Аналогично, язык Си предлагает только простые, последовательные конструкции управления: проверки, циклы, группирование и подпрограммы, но не  мультипрограммирование,  параллельные операции, синхронизацию или сопрограммы.

Удержание языка в скромных размерах дает реальные преимущества.  Так  как Си относительно мал, он не требует много места для  своего  описания  и  может  быть  быстро  выучен.

С++ Builder 2009 - средство быстрой разработки приложений для Windows на C++. C++ Builder предоставляет разработчику программного обеспечения лучшее, что есть в двух технологиях: вы получаете мощь языков и библиотек C и C++ в сочетании с продуктивностью быстрой визуальной разработки приложений.

Среда разработки C++ Builder включает расширенный редактор, отладчик, средства тестирования модулей и моделирования и мощный компилятор с опережающей поддержкой будущих стандартов C++0x. Используйте стандартные или любимые библиотеки C или C++ для разработки научных, инженерных и других Windows-приложений. Воспользуйтесь визуальным редактором и сотнями компонентов в составе продукта, чтобы быстро создавать пользовательские интерфейсы и разрабатывать приложения для взаимодействия с различными СУБД.    

Интернационализация приложений за счет поддержки Unicode

C++ Builder 2009 реализует полную поддержку Unicode, благодаря чему приложения могут выполняться на любой языковой версии Windows. Применение Unicode гарантирует, что приложения будут одинаково выглядеть и функционировать во всех языковых версиях Windows и безукоризненно поддерживать как Unicode-, так и ANSI-строки. Кроме того, новые усовершенствованные средства локализации помогают переводить приложения на различные языки.

Поддержка новейших стандартов и библиотек C++

C++Builder 2009 предоставляет разработчикам всю мощь основанного на стандартах языка C++. Воспользуйтесь широким кругом библиотек с открытым кодом и коммерческих библиотек C и C++, а также библиотеками Dinkumware STL и Boost, входящими в комплект поставки. Компилятор C++Builder 2009 обеспечивает опережающую поддержку будущих стандартов C++0x, поэтому вы сможете работать с будущей версией C++ уже сегодня.

Проектирование и разработка приложений баз данных, а также доступ к ним

C++Builder 2009 обеспечивает эффективный и быстрый доступ ко всем популярным системам управления базами данных. С помощью надёжной и мощной платформы доступа к базам данных разработчики могут легко получать доступ и просматривать данные без написания кода. Создание, чтение, обновление и удаление данных можно легко выполнять с помощью визуальных элементов управления или кода. Новая многоуровневая архитектура DataSnap позволяет создавать в среде быстрой разработки высокопроизводительные, масштабируемые middleware-приложения для баз данных. Профессиональное средство моделирования ER/Studio, входящее в состав редакции Architect, позволяет проектировать схемы баз данных и выводит на новый уровень интеграцию разработки приложений и разработки баз данных.

Визуализация приложений с помощью новых возможностей UML-моделирования для C++.

Новые возможности UML-визуализации кода в C++Builder 2009 дают наглядное представление о структуре приложений. C++Builder 2009 обеспечивает полное двустороннее взаимодействие модели со средствами моделирования LiveSource, в результате чего изменения модели отражаются в исходном коде, а измене­ния исходного кода - в модели UML.

Что нового в C++Builder

Полная поддержка Unicode. Приложения могут выполняться на любой языковой версии Windows. Применение Unicode гарантирует, что приложения будут одинаково выглядеть и функционировать во всех языковых версиях Windows и безукоризненно поддерживать как Unicode-, так и ANSI-строки. Новые усовершенствованные средства локализации помогают переводить приложения на различные языки.

Новые и расширенные компоненты VCL, придающие интерфейсам пользователя свежий, обновленный и современный внешний вид.

Поддержка новейших стандартов и библиотек C++. Улучшенная совместимость с Delphi.

Проектирование и разработка баз данных благодаря входящему в состав редакции C++Builder Architect профессионального средства моделирования Embarcadero - ER/Studio.

Редакция ориентирована на разработчиков ПО, создающих приложения на Windows с использованием двух языков программирования C++ и Delphi.

Второй язык программирования- Microsoft Visual Basic — средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft и включающее язык программирования и среду разработки. Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка — языка Бейсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса.

Visual Basic считается хорошим средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционных систем семейства Microsoft Windows.

Первое признание серьёзными разработчиками Visual Basic получил после выхода версии 3 — VB3. Окончательное признание как полноценного средства программирования для Windows — при выходе версии 5 — VB5. Версию VB6, входящую в состав Microsoft Visual Studio 6.0, стала по-настоящему зрелым и функционально богатым продуктом. После этого разработчики из Microsoft существенно изменили направление развития данной технологии

Третий язык программирования- Delphi. Изначально среда разработки была предназначена исключительно для разработки приложений Microsoft Windows, затем был реализован также для платформ Linux (как Kylix), однако после выпуска в 2002 году Kylix 3 его разработка была прекращена, и, вскоре после этого, было объявлено о поддержке Microsoft .NET. При этом высказывались предположения, что эти два факта взаимосвязаны.

Реализация среды разработки проектом Lazarus (Free Pascal, компиляция в режиме совместимости с Delphi) позволяет использовать его для создания приложений на Delphi для таких платформ, как Linux, Mac OS X и Windows CE.

Также предпринимались попытки использования языка в проектах GNU и написания компилятора для GCC

История языка

Object Pascal — результат развития языка Турбо Паскаль, который, в свою очередь, развился из языка Паскаль. Паскаль был полностью процедурным языком, Турбо Паскаль, начиная с версии 5.5, добавил в Паскаль объектно-ориентированные свойства, а в Object Pascal — динамическую идентификацию типа данных с возможностью доступа к метаданным классов (то есть к описанию классов и их членов) в компилируемом коде, также называемом интроспекцией — данная технология получила обозначение RTTI. Так как все классы наследуют функции базового класса TObject, то любой указатель на объект можно преобразовать к нему, после чего воспользоваться методом ClassType и функцией TypeInfo, которые и обеспечат интроспекцию.

Также отличительным свойством Object Pascal от С++ является то, что объекты по умолчанию располагаются в динамической памяти. Однако можно переопределить виртуальные методы NewInstance и FreeInstance класса TObject. Таким образом, абсолютно любой класс может осуществить «желание» «где хочу — там и буду лежать». Соответственно организуется и «многокучность».

Object Pascal (Delphi) является результатом функционального расширения Turbo Pascal.

Delphi оказал огромное влияние на создание концепции языка C# для платформы .NET. Многие его элементы и концептуальные решения вошли в состав С#. Одной из причин называют переход Андерса Хейлсберга, одного из ведущих разработчиков Дельфи, из компании Borland Ltd. в Microsoft Corp.

Версия 1 была предназначена для разработки под 16-разрядную платформу Win16;

Версии со второй компилируют программы под 32-разрядную платформу Win32.

Вместе с 6-й версией Delphi вышла совместимая с ним по языку и библиотекам среда Kylix, предназначенная для компиляции программ под операционную систему Linux;

Версия 8 способна генерировать байт-код исключительно для платформы .NET. Это первая среда, ориентированная на разработку мультиязычных приложений (лишь для платформы .NET);

Последующие версии (обозначаемые годами выхода, а не порядковыми номерами, как это было ранее) могут создавать как приложения Win32, так и байт-код для платформы .NET.

Delphi for .NET — среда разработки Delphi, а также язык Delphi (Object Pascal), ориентированные на разработку приложений для .NET.

Первая версия полноценной среды разработки Delphi для .NET — Delphi 8. Она позволяла писать приложения только для .NET.

В настоящее время, в Delphi 2006, можно писать приложения для .NET, используя стандартную библиотеку классов .NET, VCL для .NET. Среда также позволяет создавать .NET-приложения на C# и Win32-приложения на C++. Delphi 2006 содержит функции для написания обычных приложений с использованием библиотек VCL и CLX.

Delphi 2006 поддерживает технологию MDA с помощью ECO (Enterprise Core Objects) версии 3.0.

В марте 2006 года компания Borland приняла решение о прекращении дальнейшего совершенствования интегрированных сред разработки JBuilder, Delphi и C++ Builder по причине убыточности этого направления. Планировалась продажа IDE-сектора компании. Группа сторонников свободного программного обеспечения организовала сбор средств для покупки у Borland прав на среду разработки и компилятор.

Однако в ноябре того же года было принято решение отказаться от продажи IDE бизнеса. Тем не менее, разработкой IDE продуктов теперь будет заниматься новая компания — CodeGear, которая будет финансово полностью подконтрольна Borland.

В августе 2006 года Borland выпустил облегченные версию RAD Studio под именем Turbo: Turbo Delphi (для Win32 и .NET), Turbo C#, Turbo C++.

В марте 2008 года было объявлено о прекращении развития этой линейки продуктов.

В марте 2007 года CodeGear порадовала пользователей обновленной линейкой продуктов Delphi 2007 for Win32 и выходом совершенно нового продукта Delphi 2007 for PHP.

В июне 2007 года CodeGear представила свои планы на будущее, то есть опубликовала так называемый roadmap

25 августа 2008 года компания Embarcadero, новый хозяин CodeGear, опубликовала пресс-релиз на Delphi for Win32 2009. Версия принесла множество нововведений в язык, как т.:

По умолчанию полная поддержка Юникода во всех частях языка, VCL и RTL; замена обращений ко всем функциям Windows API на юникодные аналоги (то есть MessageBox вызывает MessageBoxW, а не MessageBoxA).

Обобщённые типы, они же generics.

Анонимные методы.

Новая директива компилятора $POINTERMATH [ON|OFF].

Функция Exit теперь может принимать параметры в соответствии с типом функции.

Инкапсуляция

Объединение и скрытие объектных данных, а также обрабатывающих их методов внутри конкретного класса от пользователя называется инкапсуляцией.

Наследование

При создании новых объектов получить все свойства и методы от своих предков называют наследованием. Такие объекты унаследывают после своего создания все поля, свойства, события, методы и прочее от своих предков. Наследование часто избавляет разработчиков от рутинной работы и позволяет не мешкая приступить к разработке чего-то нового.

Полиморфизм

Это методы различных объектов, которые могут иметь одинаковые имена, но по внутреннему содержимому отличаются друг от друга.

Типы данных

Обрабатываемые в программе данные подразделяются на переменные, константы и литералы. Константы представляют собой данные, значения которых установлены в разделе объявления констант и не изменяются в процессе выполнения программы.

Объекты

Объекты как экземпляры класса объявляются в программе в разделе var как обычные переменные. Например:

var

 CCircle1: TColorCircle;

 CircleA: TCircle;

Как и в случае записей, для обращения к конкретному элементу объекта (полю; свойству или методу) указывается имя объекта и имя элемента, разделенные точкой, то есть имя элемента является составным.

Каждая написанная программа на языке Delphi состоит из заголовка программы (program NewApplication;), поля используемых модулей Uses (к примеру, Uses Windows, Messages, SysUtils и т. д.), который может не входить в саму структуру, а также блока описание и исполнения (начинаются составным оператом begin и заканчиваются end.).

program Project1;                       // Заголовок программы, с её именем «Project1»

uses

 Forms,

 Unit1 in 'Unit1.pas' {Form1};         // модули, которые подключены к проекту и используются программой

begin

 Application.Initialize;                // Инициализация приложения

 Application.CreateForm(TForm1, Form1); // Создание формы/окна

 Application.Run;                       // Запуск и исполнение

end.

Для выбора среды разработки я использовал следующие аспекты: время компилирования проекта и конечно же знания языка. Из рассмотренных мной языков программирования я остановил свой выбор на  C++Builder. Время компилирования в данной программе занимает меньше чем в Delfi и Visual Basic, и знания данного языка программирования намного глубже.


1.3 РАССМОТРЕНИЕ АНАЛОГОВЫХ ПРОДУКТОВ

ЧАСЫ РАДАР - часы с дополнительными функциями; поиск файлов, музыки, видео, изображений; управление лотками CD-дисководов; очистка списка недавно

использовавшихся документов. Автозагрузка программы "Часы Радар", полупрозрачность, "прилипание" к краям экрана, возможность смены значка программы в TrayBar.

 

 Будильник с говорящими часами - после установки даты и времени требуется нажать на кнопку пуска - будильник заведен. Можно ввести комментарий. Затем кнопкой отправить будильник в трей. По истечении времени будильник выскочит на стол и будет трезвонить пока не нажмете кнопку останова.

Если время сигнала ожидается не скоро, то будильник можно закрыть - все значения запоминаются в INI файле.

Будильник может сообщать текущее время голосом через заданный интервал времени.

Установка интервала делается в настройках. Есть фиксированные значения: через 1, 5, 10, 30 мин и 1 час, а так же установка любого другого значения.

Голос, произносящий время (типа: три часа одна минута) можно выбирать (пока) из двух возможных.

В системе должен быть установлен кодек для проигрывания MP3.

Установка программы не требуется. Скачать Часы на рабочий стол. Говорящие часы.

AClock призван не только помочь, но еще и не навредить своим присутствием.

В данной версии реализовано:

1. Поддержка тем;

2. Настраиваемая прозрачность;

3. Прозрачность для мыши (при включенной опции кликать можно сквозь часы);

4. Опция «Всегда наверху»;

5. Автозапуск;

6. Тиканье;

7. Включение/выключение обычных стрелок (в редакторе настраивается 2 вида каждой стрелки);

8. Включение/выключение секундной стрелки;

9. Смена надписи;

10. Сохранение текущего состояния (тема, положения и т.д.);

11. Настройка для показа времени другого региона;

12. Добавлена возможность в темах отключать простые стрелки;

13. Добавлена возможность включать/выключать зависимость часовой стрелки от минутной;

14. Добавлена возможность маштабирования;

15. Добавлена возможность выбора хода секундной стрелки (обычный, реалистичный (с подергиванием), плавный);

16. Добавлен режим всегда снизу.

Изменения:

1.Заменены все стандартные темы;

Исправления:

1. Исправлен баг приводивший к утечке памяти;

2. Проведена оптимизации работы с памятью, теперь часики вместо 20Mb отъедают всего 400Kb. NEW!!!

В следующих версиях будет добавлено:

1. Будильник;

2. Возможность отображать время других временных зон.

Если Вам понравятся часы, но чего-то, по Вашему мнению, не хватает, напишите нам и мы обязательно добавим это в следующей версии.

В пакет входит:

1. Сами часики

2. Редактор тем

3. 5 Дополнительных тем.


2. ТЕХНИЧЕСКАЯ ЧАСТЬ

2.1 ФУНКЦИОНАЛЬНАЯ СПЕЦИФИКАЦИЯ


2.2 ТЕХНИЧЕСКИЙ ПРОЕКТ


2.3 ОТДЕЛЬНЫЕ АЛГОРИТМЫ И ПЕРЕМЕННЫЕ

Пользователь задаёт время для оповещения, выбирает мелодию звонка и подтверждает операцию. Время пользователь будет выбирать в компоненте TimePicker, о чём его и предупреждает подсказка, а 2 другие операции можно реализовать в обработчике события OnClick кнопки AlarmBttn:

void __fastcall TMainForm::AlarmBttnClick(TObject *Sender)

{

do

{

if(AlarmOpenDialog->Execute()) // Если диалог открытия запущен

{

MediaPlayer->FileName=AlarmOpenDialog->FileName;  // …выберем файл для воспроизведения медиаплейером.

}

if(MediaPlayer->FileName=="") Application->MessageBox("Вы должны выбрать мелодию для оповещения!", "Будильник", MB_OK+MB_ICONWARNING);

}

while(MediaPlayer->FileName=="");

iAlarmHours=StrToInt(FormatDateTime("h", TimePicker->Time));

iAlarmMinutes=StrToInt(FormatDateTime("n", TimePicker->Time));

MediaPlayer->Open();

bIsTimerOn=true; // Таймер будильника запущен.

}

FormatDateTime("h", TimePicker->Time): мы переводим время из свойства TimePicker->Time в «удобоваримую» форму в виде строки. После этого строку преобразуем в целое, воспользовавшись функцией StrToInt, и сохраняем

результат в переменных:

iAlarmHours=StrToInt(FormatDateTime("h", TimePicker->Time));

iAlarmMinutes=StrToInt(FormatDateTime("n", TimePicker->Time));

Теперь нагрузим работой наш бедный таймер, которому каждую секунду (если, конечно запущен будильник bIsTimerOn=true;), помимо отрисовки текущего времени, предстоит сравнивать его с заданным, чтобы решить, не пора ли врубить музыку:

void __fastcall TMainForm::TimerTimer(TObject *Sender)

{

TimePanel->Caption=TimeToStr(Time());

if(bIsTimerOn==true) // Если будильник включён

{

iHours=StrToInt(FormatDateTime("h", Time()));

iMinutes=StrToInt(FormatDateTime("n", Time())); // …получим текущее время

if((iHours==iAlarmHours) && (iMinutes>=iAlarmMinutes)) // …и если оно совпало с заданным пользователем…

{

MediaPlayer->Play(); // …играем!

}

if(MediaPlayer->Mode==mpPlaying) bIsTimerOn=false // Если медиаплейер уже играет, то будильник можно выключить.

}

}


2.4
ЛИСТИНГ ПРОГРАММЫ

TimePanel->Caption=TimeToStr(Time());

if(bIsTimerOn==true) //если будильник включен

{

iHours=StrToInt(FormatDateTime("h",Time()));

iMinutes=StrToInt(FormatDateTime("n",Time()));  //текущее время

if((iHours==iAlarmHours) & (iMinutes>iAlarmMinutes))

{

if(MediaPlayer->Mode==mpPlaying)bIsTimerOn=false;  //если плеер уже играет, то будильник можно выключить

}

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::AlarmBttnClick(TObject *Sender)

{

do

{

if(AlarmOpenDialog->Execute()) //если диалог открытия запущен...

{

MediaPlayer->FileName=AlarmOpenDialog->FileName; //...выбираем файл для воспроизведения медиаплейером

}

if(MediaPlayer->FileName=="") Application->MessageBox("Вы должны выбрать мелодию для оповещения!", "Будильник", MB_OK+ MB_ICONWARNING);

}

while(MediaPlayer->FileName=="");

iAlarmHours=StrToInt(FormatDateTime("h", TimePicker->Time));

iAlarmMinutes=StrToInt(FormatDateTime("n", TimePicker->Time));

MediaPlayer->Open();

bIsTimerOn=true; //таймер будильника включен

}

//---------------------------------------------------------------------------

void __fastcall TForm1::CancelAlarmBttnClick(TObject *Sender)

{

bIsTimerOn=false;

if(MediaPlayer->Mode==mpPlaying) MediaPlayer->Stop();

TimePicker->Time=StrToTime("0:00:00"); //сброс на ноль

}

//---------------------------------------------------------------------------

    void __fastcall TForm1::Button1Click(TObject *Sender)

{

ShellExecute (Form1->Handle, "open", "справка.hnd", NULL, NULL, SW_RESTORE);        

}

//---------------------------------------------------------------------------
2.5 ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА

С панели Standart выбираем GroopBox и помещаем его на форму

Задаем  следующие значения свойств GroupBox:

Caption – Время оповещения:, Name – AlarmBox.

На GroopBox с той же панели помещаем кнопки Задать, Отменить, Справка

Добавил на GroopBox панель для выведения на нее текущего времени.

Для этого нам понадобится компонент Timer (вкладка System)

Добавляем компонент DateTimePicker, расположенного на вкладке Win32 палитры компонентов. Он будет работать в качестве таймера для  будильника.

Также на форму поместим компонент MediaPlayer с вкладки System и OpenDialog с вкладки Dialogs.

Затем программируем каждый объект и получаем довольно не сложные часы со встроенным будильником

2.6 ПРОЕКТИРОВАНИЕ СПРАВКИ

Справочную информацию я изготовил при помощи программы Help Cruiser.

создаем новую справку

добавляем, удаляем и переименуем разделы

После этого заполняем справку нужной нам информацией.

И оформляем текст при помощипанели форматирования

Затем сохраняем нашу справку

и помещаем ее в программу


2.7 ТЕСТИРОВАНИЕ

Для начала устанавливаем время в таймере. Затем нажимаем кнопку Задать

Выбираем мелодию и ждем звонка.

Справку можно посмотреть нажав

СЕРТИФИКАЦИЯ ПРОГРАМНОГО ПРОДУКТА

3.1 ОЦЕНКА ПРОГРАМНОГО ПРОДУКТА

Оценочные элементы фактора “надежность ПС”

Код элемента

Наименование

Оценка

1

2

4

Н0103

Полнота обработки  ошибочных ситуаций.

0,45

Н0104

Наличие тестов для проверки допустимых значений входных данных.

0,8

Н0105

Наличие системы контроля полноты входных данных.

0,5

Н0106

Наличия средств контроля корректности входных данных.

1

Н0202

Наличие требований к программе по восстановлению результатов при отказах процессора, ОС.

0

Н0203

Наличие средств восстановления процесса в случае сбоев оборудования.

0

Н0204

Наличие возможности разделения по времени выполнения отдельных функций программ.

0

Н0205

Наличие возможности повторного старта с точки останова.

1

Н0108

Наличие проверки параметров и адресов по диапазону их значений.

1

Н0109

Наличие обработки граничных результатов.

0

Н0110

Наличие обработки неопределенностей (деление на 0, квадратный корень из отрицательного числа и т.д.).

0

Н0303

Наличие средств, обеспечивающих  завершение процесса решения в случае помех.

1

Оценочные элементы фактора “удобство применения”

Код элемента

Наименование

Оценка

1

2

3

У0101

Возможность освоения программных средств по документации.

0,8

У0102

Возможность освоения ПС на контрольном примере при помощи ЭВМ.

1

У0103

Возможность поэтапного освоения ПС.

1

У0201

Полнота и понятность документации для освоения.

1

У0202

Точность документации для освоения .

1

У0203

Техническое исполнение документации.

0,7

У0301

Наличие краткой аннотации.

0,6

У0314

Наличие описаний программной среды функционирования ПС.

1

У0401

Соответствие оглавления содержания документации.

0,7

У0403

Грамматическая  правильность изложения

0,8

У0405

Отсутствие неправильных ссылок.

1

У0412

Отсутствие ненужных повторений.

У0413

Наличие нужных объяснений.

1

У0501

Оценка стиля изложения.

0,7

У0601

Наличие оглавления.

1

Примечания. Коды оценочных элементов составлены из 5 символов следующим образом:

1-й символ - буква русского алфавита - указывает на принадлежность элемента тому или иному фактору. (“Н”- надежности,  “У” - удобству применения,  “Э” – эффективности. 2-й и 3-й символы - номер метрики, которой принадлежит оценочный элемент; 4-й и 5-й символы - порядковый номер данного оценочного элемента в метрике. Например, “Н1004” означает, что это 4-й оценочный элемент из 10-й метрики фактора “надежность”.


3.2 ОФОРМЛЕНИЕ ДОКУМЕНТАЦИИ

Начальник Управления

Энергетики РФ                                          И.К. ЧЕРКАСОВ

                               ЗАЯВКА

           НА ПРОВЕДЕНИЕ СЕРТИФИКАЦИИ ПРОГРАММНЫХ СРЕДСТВ

  1.  «Мигера»; Кадиров Андрей, Сахарова Маргорита                                                                                                 _________________________________________

       (наименование организации - заявителя, Ф.И.О. заявителя)

просит провести сертификацию Программного средства «Мигера»

    2. Краткая аннотация на ПС Назначение: отображает текущее время; Применение: В любой сфере промышленности; Новизна: Отсутствует; Аналоги: Существуют.________________________________________

(назначение, применение,

новизна, аналоги и т.п.)

    Заявитель согласен    оплатить    расходы     по     сертификации

(сертификационные испытания и экспертизы в размере 100000 рублей______

    4. Дополнительные сведения: Соответветсвие ГОСТу 28195-89________

Оценочные элементы фактора “надежность ПС”____________________________

    5. Желательный срок проведения испытаний с 10 апреля по 19 апреля 2011г.______________________________________________________________

Руководитель организации - заявителя _____________ (подпись, дата)

(заявитель)

Главный бухгалтер организации - __________________ (подпись, дата)

заявителя

                    Печать организации-заявителя


Администрация г. Конаково тверской обл.

Открытое акционерное общество

Проектный, научно-исследовательский и конструкторский институт

«KONAKOVO BOTAN STUDIO»

ОАО «Konakovo botan studio»

Испытательный центр «КРАССТРОЙ»

660041, г. Красноярск, пр. Свободный, 75   т/ф(3912) 440953/448518

 Аттестат аккредитации № РОСС RU.0001.22СЛ32, срок действия с 10.03.11 по 10.03.12г

№_________ от «__»_____ 2011г.      шифр/код  Д218-н/07

ПРОТОКОЛ №666

испытаний программного продукта Oclok

Заказчик: ОАО «Мигера», г. Конаково

Наименование продукции:

 O’clok

Образец для испытания предоставлен Заказчиком.

 Цель испытаний: Надежность программного обеспечения.

 Дата проведения испытаний: 10 апреля 2011г. -19 арпеля 2011

 

Результаты испытаний представлены в таблице.

Зав. Директор       Е.Е. Кузнецова

Ведущий инженер       И.Н. Пристром



ЗАКЛЮЧЕНИЕ

Перед тем, как приступить к разработке данного программного продукта, я изучил справочную информацию, учебники, разобрал основные понятия.

Также я получил большой опыт работы в среде проектирования Borland C++ Builder. Убедился, что она позволяет создавать приложения в несколько раз быстрее, чем, например, Microsoft Visual C++.

В процессе ты над курсовым проектом мы создали программный продукт, которой отображает текущее время и поможет не проспать важную встречу или учебу с помощью будильника.


СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Введение в Borland Delphi 2006 = Delphi for Dummies. — М.: Диалектика, 2007.    — 336 с. — ISBN 0-7645-0179-8

2. Хавьер Пашеку. Программирование в Borland Delphi 2006 для профессионалов = Delphi for .NET Developers Guide. — М.: Вильямс, 2006. — 944 с. — ISBN 0-672-32443-X

3. А. Н. Вальвачев, К. А. Сурков, Д. А. Сурков, Ю. М. Четырько. Программирование на языке Delphi. Учебное пособие.

4. C++ и Borland C++ Builder, Боровский.;

5. Borland C++ Builder. Настольная книга программиста. Кент Рейсдорф.;

6. Лафоре Р. _Объектно-ориентированное программирование в C++;


Cancel

Help

Отменить

Задать

Media

Player

ime

Panel

Alarm

Panel

Timer

Form1


 

А также другие работы, которые могут Вас заинтересовать

56517. Тренінгове заняття «Світ батьків – світ дітей» 56.5 KB
  Ефективність заняття підвищиться якщо його проводити після батьківських зборів. Завдання: посилення ролі сім'ї в виховному процесі покращення стосунків між дітьми та батьками розвиток навичок взаєморозуміння підвищення психологічної компетентності батьків.
56518. Вивчення впливу комп’ютера на здоров’я людини 83.5 KB
  Мета: ознайомити учасників з позитивним і негативним впливом комп’ютера на здоров’я людини; надати можливість учасникам виявити рівень негативного впливу комп’ютера на їхнє здоров’я; сформувати в учасників практичні навички застосування вправ для розминки...
56519. Рішення. Безліч рішень 329.5 KB
  Мета: пояснити учням що люди протягом дня приймають багато рішень усі рішення мають наслідки що можна навчитись приймати правильні рішення; розповісти що необхідно звертатись за допомогою до старших для прийняття правильного рішення...
56520. Я + Я = КОМАНДА 31 KB
  Мета: активізувати учасників групи підвищити їх емоційний настрій. Вправа Очікування Мета: виявити що чекають від заняття мобілізувати пізнавальні процеси. Вправа Правила групи...
56521. Тренінг «Моделі самоврядування» 189.5 KB
  Мета: прийняти правила для продуктивної роботи групи під час тренінгу. Хід вправи: Учасникам тренінгу пропонується назвати правила які на їхню думку потрібні для ефективної роботи під час тренінгу.
56522. TRICKY JOBS 58.5 KB
  Well, now I am sure that you can easily guess the subject of our today’s lesson. Yes, you are right; we are going to talk about jobs. If to be precise we are going to focus on tricky jobs.
56523. Тригонометричні підстановки в показникових рівняннях 151 KB
  Як література розвиває емоції взаєморозуміння так математика розвиває спостережливість уяву і розум. Представники кожної із чотирьох груп заздалегідь заготували на дошці запис...
56524. Решение простейших тригонометрических уравнений 782 KB
  Решить уравнение Решение. Решить уравнение Решение. Решить уравнение Решение. Ответ: уравнение не имеет решений Учащиеся уровня А заполняют карточки с подсказками.
56525. Урок по алгебре форме игры «Счастливый случай» 208.5 KB
  Тригонометрические функции числового аргумента. Тригонометрические функции двойного и половинного аргумента. Обратные тригонометрические функции их определения. Какие явления напоминает график синусоиды или косинусоиды Составление кроссвордов друг другу...