Разработка автоматизированной информационной системы "Компьютерный склад" на примере отдела технической поддержки ОАО "ГСКБ "Алмаз-Антей"
Понятие информационной системы, виды информационных систем. Анализ инструментальных средств для разработки автоматизированных информационных систем. Требования к программе и программному изделию. Разработка форм графического интерфейса и баз данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 23.06.2015 |
Размер файла | 1,4 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Рисунок 21 - Информация о разработчике программы.
Небольшая форма, указывающая на автора этой программы и на ссылку сайта страницы пользователя (Рисунок 21).
Рисунок 22 -Система авторизации.
Т.к в ГСКБ «Алмаз-Антей» используются вычислительные машины с использованием «Active directory» (Локального домена), программе не нужно реализовывать сложную структуру шифрования служебных данных т.к. этим всем обладает сервер локального домена, и все данные хранятся внутри корпоративной локальной вычислительной сети (КЛВС), но защиту «от дурака» сделать необходимо. Для этого используется встроенная система авторизации (Рисунок 22). Система позволяет исключить несанкционированное изменение данных в информационной системе при случайном (или специальном) запуске программы. В данном примере используется только одна связка «Логин-пароль», в дальнейшем ее можно будет изменить на авторизацию через локальный домен.
2.9 Полное руководство пользователя.
Пользователь запускает программу и авторизуется.
Пользователь выбирает необходимую категорию. (Например «Заявки»)
Дальше после выбора категории нам необходимо определиться, что нужно делать (вводить/исправлять необходимые данные либо найти нужную запись в уже имеющейся базе данных)
Если необходимо ввести/исправить необходимые данные:
Ищем необходимые записи в таблице, если записей много можно воспользоваться функцией «Поисковик» в нижней части окна программы. (Про многофункциональный и обычный поиск см. «Поиск записей»)
Исправляем в найденных записях нужные данные, если же записей нет, вводим новые.
Поиск записей.
Если нам необходимо найти запись среди множества данных в таблице базы данных нужно:
Воспользоваться функцией «Поисковик» в нижней части окна программы.
Выбрать функцию «Обычный поиск» (Для поиска одной или нескольких записей по одному столбцу таблицы), либо выбрать функцию «Многофункциональный поиск» (Для открытия дополнительных функций поиска данных по нескольким столбцам, и более точным поиском записей.)
Внимание! «Многофункциональным поиском» могут воспользоваться только опытные пользователи, знающие работу запросов баз данных, обычным же пользователям лучше использовать «Обычный поиск».
«Обычный поиск»
После выбора типа поиска в первую строку «Поисковика» вводится необходимая нам запись (Например, имя «Иван»).
Далее выбирается категория, по которой необходимо найти запись. (Например «Имя»)
После выбора категории нажимаем «Поиск».
«Многофункциональный поиск»
Для многофункционального поиска выполняются все те же действия, что и в «Обычном поиске», но данный поиск можно выполнять с дополнительными требованиями, для этого:
Выполняем пункты 3, 4 «Обычного поиска»
Нажимаем And (если необходимо уточнить поиск дополнительными критериями), либо Or (для поиска дополнительных записей с разными критериями поиска).
Пункты 1,2 «Многофункционального поиска» можно выполнять несколько раз для более точного или более обширного поиска данных.
Аналогичен 5 пункту «Обычного поиска».
тобы очистить записи в строке поиска, необходимо нажать кнопки «Очистить» в любом из типов поиска.
Для отмены поиска используется кнопка «Отмена поиска».
Для завершения работы необходимо нажать кнопки «Главное меню» и «Выход». (Либо можно просто закрыть все окна приложения, программа сама сохранит все данные в базе)
«О программе» и «Об авторе» - хранят краткое руководство пользователя, и информацию об авторе программы. Рекомендованы к просмотру перед использованием программы, либо для связи с разработчиком.
3. Экономическая часть
3.1 Организационно-экономическое обоснование проекта
Данное приложение создано для внутреннего пользования специалистов отдела технической поддержки ОАО «ГСКБ «Алмаз-Антей» и круг потребителей достаточно узок для экономического анализа, но оно увеличивает эффективность труда всего отдела в целом, и экономит на офисных расходных ресурсах (бумага, чернила и т.д.).
3.2 Расчет себестоимости
Разработка любого устройства (программного продукта) требует определенных материальных, временных и трудовых затрат, а следовательно, должна соответственно окупаться.
3.2.1 Расчет трудоемкости
Таблица 2 - Трудоемкость проекта
№п/п |
Виды работ |
Трудоемкость,дн. |
|
1 |
Получение ТЗ |
5 |
|
2 |
Сбор информации и ознакомление с предметной областью |
5 |
|
3 |
Выбор объектного построения программы |
5 |
|
4 |
Разработка общей методики создания продукта |
10 |
|
5 |
Разработка основного алгоритма |
10 |
|
6 |
Создание интерфейса |
5 |
|
7 |
Отладка |
15 |
|
8 |
Подготовка технической документации |
3 |
|
9 |
Сдача продукта |
2 |
|
Итого |
60 |
3.2.2 Расчет затрат на электроэнергию и амортизацию оборудования
Таблица 3 - Затраты на электроэнергию и амортизацию оборудования.
№п/п |
Наименование |
Кол-во |
Цена ед. |
Сумма,Руб. |
|
1 |
Электропотребление ЭВМ |
200 КВт |
4.91р |
981р |
|
2 |
Износ жесткого диска |
1 шт. |
3000р |
3000р |
|
3 |
Зачистка систем охлаждения ЭВМ |
1500р |
1500р |
||
4 |
Поддержание работоспособности КЛВС |
3000р |
3000р |
||
Итого: |
8481р |
3.2.3 Расчет затрат на материалы
Таблица 4- Калькуляция стоимости основных материалов
№ п/п |
Наименование |
Кол-во, шт. |
Цена ед., руб. |
Сумма, руб. |
|
1 |
Бумага |
10 |
200 |
2000 |
|
2 |
Ручки |
15 |
10 |
150 |
|
3 |
Колер для принтера |
1 |
800 |
800 |
|
Итого |
2950 |
3.2.4 Расчет начислений на заработную плату
Исходя из месячной зарплаты в 30000руб. и трудоемкости проект начисления на заработную плату, в зависимости от категории плательщика, указанных в ФЗ № 212-ФЗ, рассчитываются по следующим ставкам (табл. 5):
Таблица 5 - Начисления на заработную плату
Начисления на заработную плату |
Процент, % |
Сумма, руб. |
|
Пенсионный фонд (ПФ):- страховая часть- накопительная часть |
166 |
144005400 |
|
Фонд социального страхования (ФСС) |
2,9 |
2600 |
|
Федеральный фонд обязательного медицинского страхования (ФФОМС) |
5,1 |
4590 |
|
Итого |
30 |
26990 |
3.2.5 Расчет себестоимости и цены разработки программного продукта
Таблица 4 - Смета всех затрат.
№ п/п |
Наименование статей затрат |
Сумма, руб. |
|
1 |
Заработная плата программиста |
90000 |
|
2 |
Расходы на электроэнергию и амортизацию оборудования |
8481 |
|
3 |
Затраты на материалы |
2950 |
|
4 |
Начисления на заработную плату |
26990 |
|
Итого: |
128421 |
ЗАКЛЮЧЕНИЕ
В конце всего выше перечисленного хотелось бы подвести итог всего, чего мы добились в написании данной программы.
1) Данная программа действительно упрощает работу специалистам отдела технической поддержки (Нет необходимости сохранять лишние копии документов.)
2) Можно полностью переходить на цифровой метод хранения данных.
3) Персоналу не требуется изучать новые программы создания и работы с базами данных, все пункты пользовательского интерфейса предельно просты и понятны.
4) Все данные хранятся очень долгое время и можно отследить все виды работ на складе по заявкам за многие годы работы.
5) Запрещено неумышленное изменение/повторение уникальных данных по комплектующим. (Программа не позволяет делать лишние ошибки)
6) Возможно изменение/расширение функционала программы.(Программу можно в любой момент изменить, исправить недоработки, поменять тематику, расширить функциональные возможности всех пунктов меню, добавить новые.)
О данной программе можно говорить довольно много, но одно из всего этого предельно ясно - это то, что со своей задачей данная программа справляется, и работа с информационными системами становится более простой и увлекательной.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Гребенюк Е.И.: Технические средства информатизации. - М.: Академия, 2011
2. Михеева Е.В.: Информационные технологии в профессиональной деятельности. - М.: Академия, 2011
3. Голенищев Э.П.: Информационное обеспечение систем управления. - Ростов н/
4. Кузовкин А.В.: Управление данными. - М.: Академия, 2010
5. Михеева Е.В.: Информационные технологии в профессиональной деятельности. - М.: Академия, 2010
6. под ред. С.В. Симоновича ; рец.: Каф. Московского гос. технического ун-та им. Н.Э. Баумана, С.В. Калин: Информатика. - СПб.: Питер, 2010
7. Уткин В.Б.: Информационные системы в экономике. - М.: Академия, 2010
8. [отв. ред. И.В. Коробко]: Программы для ЭВМ . - М.: ФГУ ФИПС, 2009
9. [отв. ред. И.В. Коробко]: Программы для ЭВМ . - М.: ФГУ ФИПС, 2009
10. Могилев А.В.: Информатика. - М.: Академия, 2009
11. Моосмюллер Г.: Маркетинговые исследования с SPSS. - М.: ИНФРА-М, 2009
12. под ред. С.В. Симоновича ; рец.: Кафедра САПР Московского гос. технического ун-та им. Н.Э. Баумана, С.В. Калин: Информатика. - СПб.: Питер, 2009
13. Филимонова Е.В.: Информационные технологии в профессиональной деятельности. - Ростов н/Д: Феникс, 2009
14. Алешин Л.И.: Информационные технологии . - М.: Литера, 2008
15. Гиляревский Р.С.: Рубрикатор как инструмент информационной навигации. - СПб.: Профессия, 2008
16. Днепров А.Г.: Видеосамоучитель. Microsoft Access 2007. - СПб.: Питер, 2008
17. Избачков Ю.С.: Информационные системы. - СПб.: Питер, 2008
18. Могилев А.В.: Информатика. - М.: Академия, 2008
19. под общ. ред. д-ра экон. наук, профессора П.В. Акинина : Информационные системы в экономике: Практикум. - М.: КНОРУС, 2008
20. под общ. ред. П.В. Акинина ; сост.: Е.Л. Торопцев и др. ; рец.: Р.Г. Закинян, А.Н. Байдаков: Информационные системы в экономике. - М.: КноРус, 2008
21. под ред. проф. А.Н. Романова, проф. Б.Е. Одинцова: Информационные системы в экономике . - М.: Вузовский учебник, 2008
22. Рец.: П.Л. Салманов и др. ; В.И. Чернов и др.: Информатика. - М.: Дрофа, 2008
23. Родигин Л.А.: Базы данных для карманного персонального компьютера Pocket PC. - М.: КноРус, 2008
24. Сергеев А.В.: Access 2007. Новые возможности. - СПб.: Питер, 2008
25. М. Эллис, Б. Строуструп. Справочное руководство по языку C++ с комментариями: Пер. с англ. - Москва: Мир, 1992. 445с.
26. Стенли, Б. Липпман. C++ для начинающих: Пер. с англ. 2тт. - Москва: Унитех; Рязань: Гэлион, 1992, 304-345сс.
27. Бруно Бабэ. Просто и ясно о Borland C++: Пер. с англ. - Москва: БИНОМ, 1994. 400с.
28. В.В. Подбельский. Язык C++: Учебное пособие. - Москва: Финансы и статистика, 1995. 560с.
29. Ирэ Пол. Объектно-ориентированное программирование с использованием C++: Пер. с англ. - Киев: НИИПФ ДиаСофт Лтд, 1995. 480с.
30. Т. Фейсон. Объектно-ориентированное программирование на Borland C++ 4.5: Пер. с англ. - Киев: Диалектика, 1996. 544с.
31. Т. Сван. Освоение Borland C++ 4.5: Пер. с англ. - Киев: Диалектика, 1996. 544с.
32. Г. Шилдт. Самоучитель C++: Пер. с англ. - Санкт-Петербург: BHV-Санкт-Петербург, 1998. 620с.
33. У. Сэвитч. C++ в примерах: Пер. с англ. - Москва: ЭКОМ, 1997. 736с.
34. К. Джамса. Учимся программировать на языке C++: Пер. с англ. - Москва: Мир, 1997. 320с.
35. В.А. Скляров. Язык C++ и объектно-ориентированное программирование: Справочное издание. - Минск: Вышэйшая школа, 1997. 480с.
36. Х. Дейтел, П. Дейтел. Как программировать на C++: Пер. с англ. - Москва: ЗАО "Издательство БИНОМ", 1998. 1024с.
ПРИЛОЖЕНИЯ
Приложение А
Программный код
Файл Unit1.h
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <ExtCtrls.hpp>
#include <jpeg.hpp>
#include <Unit2.h>
#include <Unit3.h>
#include <Unit4.h>
#include <Unit5.h>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TMainMenu *MainMenu1;
TMenuItem *N1;
TMenuItem *N2;
TMenuItem *N3;
TMenuItem *N4;
TLabel *Label1;
TButton *Button1;
TButton *Button3;
TButton *Button4;
TImage *Image1;
TLabel *Label2;
TEdit *Edit1;
TEdit *Edit2;
TButton *Button2;
TLabel *Label3;
TLabel *Label4;
TLabel *Label5;
TLabel *Label6;
void __fastcall N4Click(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall Button3Click(TObject *Sender);
void __fastcall Button4Click(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
void __fastcall N3Click(TObject *Sender);
void __fastcall Button2Click(TObject *Sender);
void __fastcall FormCreate(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
Файл Unit2.h.
//---------------------------------------------------------------------------
#ifndef Unit2H
#define Unit2H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <ADODB.hpp>
#include <DB.hpp>
#include <DBCtrls.hpp>
#include <DBGrids.hpp>
#include <Dialogs.hpp>
#include <ExtCtrls.hpp>
#include <ExtDlgs.hpp>
#include <Grids.hpp>
#include <MPlayer.hpp>
//---------------------------------------------------------------------------
class TForm2 : public TForm
{
__published: // IDE-managed Components
TLabel *Label1;
TLabel *Label2;
TMainMenu *MainMenu1;
TMenuItem *N1;
TMenuItem *N2;
TMenuItem *N3;
TMenuItem *N4;
TMenuItem *N5;
TDataSource *DataSource1;
TDBGrid *DBGrid1;
TDBNavigator *DBNavigator1;
TADOConnection *ADOConnection1;
TADOTable *ADOTable1;
TButton *Button1;
TButton *Button2;
TComboBox *ComboBox1;
TEdit *Edit1;
TEdit *Edit2;
TButton *Button3;
TButton *Button4;
TButton *Button5;
TButton *Button6;
TLabel *Label3;
TRadioButton *RadioButton1;
TRadioButton *RadioButton2;
void __fastcall N5Click(TObject *Sender);
void __fastcall N4Click(TObject *Sender);
void __fastcall FormCreate(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall Button2Click(TObject *Sender);
void __fastcall ComboBox1Change(TObject *Sender);
void __fastcall Button3Click(TObject *Sender);
void __fastcall Button4Click(TObject *Sender);
void __fastcall Button5Click(TObject *Sender);
void __fastcall Button6Click(TObject *Sender);
void __fastcall N3Click(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
void __fastcall RadioButton2Click(TObject *Sender);
void __fastcall RadioButton1Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm2(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm2 *Form2;
//---------------------------------------------------------------------------
#endif
Файл Unit3.h.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit3.h"
#include "Unit4.h"
#include "Unit7.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm3 *Form3;
//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm3::N5Click(TObject *Sender)
{
Form3->Visible=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm3::N4Click(TObject *Sender)
{
Form3->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::FormCreate(TObject *Sender)
{
Form3->Position = poScreenCenter;
}
//---------------------------------------------------------------------------
void __fastcall TForm3::ComboBox1Change(TObject *Sender)
{
if( ComboBox1->ItemIndex == 0)
Edit2->Text = Edit2->Text + "Kod_zayavki" + "='" + Edit1->Text + "'";
if( ComboBox1->ItemIndex == 1)
Edit2->Text = Edit2->Text + "Inventaeniy_nomer" + "='" + Edit1->Text + "'";
if( ComboBox1->ItemIndex == 2)
Edit2->Text = Edit2->Text + "data_podachi_zayavki" + "='" + Edit1->Text + "'";
if( ComboBox1->ItemIndex == 3)
Edit2->Text = Edit2->Text + "kod_sotrudnika" + "='" + Edit1->Text + "'";
if( ComboBox1->ItemIndex == 4)
Edit2->Text = Edit2->Text + "status" + "='" + Edit1->Text + "'";
if( ComboBox1->ItemIndex == 5)
Edit2->Text = Edit2->Text + "data_ispolneniya" + "='" + Edit1->Text + "'";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button3Click(TObject *Sender)
{
Edit1->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button4Click(TObject *Sender)
{
Edit2->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button1Click(TObject *Sender)
{
Form3->ADOTable1->Filter = Edit2->Text;
Form3->ADOTable1->Filtered = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button2Click(TObject *Sender)
{
ADOTable1->Filtered = false;
Edit2->Clear();
Edit1->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button5Click(TObject *Sender)
{
Edit2->Text = Edit2->Text + " AND ";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button6Click(TObject *Sender)
{
Edit2->Text = Edit2->Text + " OR ";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button7Click(TObject *Sender)
{
Edit2->Text = Edit2->Text + " < ";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button8Click(TObject *Sender)
{
Edit2->Text = Edit2->Text + " > ";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::N3Click(TObject *Sender)
{
Form7->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::N2Click(TObject *Sender)
{
Form4->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::RadioButton2Click(TObject *Sender)
{
Button4->Visible=false;
Edit2->Visible=false;
Button5->Visible=false;
Button6->Visible=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm3::RadioButton1Click(TObject *Sender)
{
Button4->Visible=true;
Edit2->Visible=true;
Button5->Visible=true;
Button6->Visible=true;
}
//---------------------------------------------------------------------------
Файл Unit5.h.
//---------------------------------------------------------------------------
#ifndef Unit5H
#define Unit5H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <ADODB.hpp>
#include <DB.hpp>
#include <DBCtrls.hpp>
#include <DBGrids.hpp>
#include <ExtCtrls.hpp>
#include <Grids.hpp>
//---------------------------------------------------------------------------
class TForm5 : public TForm
{
__published: // IDE-managed Components
TLabel *Label2;
TLabel *Label1;
TMainMenu *MainMenu1;
TMenuItem *N1;
TMenuItem *N2;
TMenuItem *N3;
TMenuItem *N4;
TMenuItem *N5;
TADOConnection *ADOConnection1;
TADOTable *ADOTable1;
TDataSource *DataSource1;
TDBGrid *DBGrid1;
TDBNavigator *DBNavigator1;
TLabel *Label3;
TButton *Button1;
TButton *Button2;
TComboBox *ComboBox1;
TEdit *Edit1;
TEdit *Edit2;
TButton *Button3;
TButton *Button4;
TButton *Button5;
TButton *Button6;
TRadioButton *RadioButton1;
TRadioButton *RadioButton2;
void __fastcall N5Click(TObject *Sender);
void __fastcall N4Click(TObject *Sender);
void __fastcall FormCreate(TObject *Sender);
void __fastcall Button3Click(TObject *Sender);
void __fastcall ComboBox1Change(TObject *Sender);
void __fastcall Button4Click(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall Button2Click(TObject *Sender);
void __fastcall Button5Click(TObject *Sender);
void __fastcall Button6Click(TObject *Sender);
void __fastcall N3Click(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
void __fastcall RadioButton1Click(TObject *Sender);
void __fastcall RadioButton2Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm5(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm5 *Form5;
//---------------------------------------------------------------------------
#endif
Файл Unit6.h.
//---------------------------------------------------------------------------
#ifndef Unit6H
#define Unit6H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------
class TFrame6 : public TFrame
{
__published: // IDE-managed Components
private: // User declarations
public: // User declarations
__fastcall TFrame6(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFrame6 *Frame6;
//---------------------------------------------------------------------------
#endif
Файл Unit7.h.
//---------------------------------------------------------------------------
#ifndef Unit7H
#define Unit7H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------
class TForm7 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
TLabel *Label1;
TLabel *Label2;
TLabel *Label3;
TLabel *Label4;
TLabel *Label5;
void __fastcall FormCreate(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall Label3Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm7(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm7 *Form7;
//---------------------------------------------------------------------------
#endif
Файл JPEG.hpp.
// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved
// (DO NOT EDIT: machine generated header) 'jpeg.pas' rev: 6.00
#ifndef jpegHPP
#define jpegHPP
#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Graphics.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <SysUtils.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <SysInit.hpp> // Pascal unit
#include <System.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
#pragma link "jpeg.obj"
namespace Jpeg
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TJPEGData;
class PASCALIMPLEMENTATION TJPEGData : public Graphics::TSharedImage
{
typedef Graphics::TSharedImage inherited;
private:
Classes::TCustomMemoryStream* FData;
int FHeight;
int FWidth;
bool FGrayscale;
protected:
virtual void __fastcall FreeHandle(void);
public:
__fastcall virtual ~TJPEGData(void);
public:
#pragma option push -w-inl
/* TObject.Create */ inline __fastcall TJPEGData(void) : Graphics::TSharedImage() { }
#pragma option pop
};
typedef Shortint TJPEGQualityRange;
#pragma option push -b-
enum TJPEGPerformance { jpBestQuality, jpBestSpeed };
#pragma option pop
#pragma option push -b-
enum TJPEGScale { jsFullSize, jsHalf, jsQuarter, jsEighth };
#pragma option pop
#pragma option push -b-
enum TJPEGPixelFormat { jf24Bit, jf8Bit };
#pragma option pop
class DELPHICLASS TJPEGImage;
class PASCALIMPLEMENTATION TJPEGImage : public Graphics::TGraphic
{
typedef Graphics::TGraphic inherited;
private:
TJPEGData* FImage;
Graphics::TBitmap* FBitmap;
int FScaledWidth;
int FScaledHeight;
HPALETTE FTempPal;
bool FSmoothing;
bool FGrayScale;
TJPEGPixelFormat FPixelFormat;
TJPEGQualityRange FQuality;
bool FProgressiveDisplay;
bool FProgressiveEncoding;
TJPEGPerformance FPerformance;
TJPEGScale FScale;
bool FNeedRecalc;
void __fastcall CalcOutputDimensions(void);
Graphics::TBitmap* __fastcall GetBitmap(void);
bool __fastcall GetGrayscale(void);
void __fastcall SetGrayscale(bool Value);
void __fastcall SetPerformance(TJPEGPerformance Value);
void __fastcall SetPixelFormat(TJPEGPixelFormat Value);
void __fastcall SetScale(TJPEGScale Value);
void __fastcall SetSmoothing(bool Value);
protected:
virtual void __fastcall AssignTo(Classes::TPersistent* Dest);
virtual void __fastcall Changed(System::TObject* Sender);
virtual void __fastcall Draw(Graphics::TCanvas* ACanvas, const Types::TRect &Rect);
virtual bool __fastcall Equals(Graphics::TGraphic* Graphic);
void __fastcall FreeBitmap(void);
virtual bool __fastcall GetEmpty(void);
virtual int __fastcall GetHeight(void);
virtual HPALETTE __fastcall GetPalette(void);
virtual int __fastcall GetWidth(void);
void __fastcall NewBitmap(void);
void __fastcall NewImage(void);
virtual void __fastcall ReadData(Classes::TStream* Stream);
void __fastcall ReadStream(int Size, Classes::TStream* Stream);
virtual void __fastcall SetHeight(int Value);
virtual void __fastcall SetPalette(HPALETTE Value);
virtual void __fastcall SetWidth(int Value);
virtual void __fastcall WriteData(Classes::TStream* Stream);
__property Graphics::TBitmap* Bitmap = {read=GetBitmap};
public:
__fastcall virtual TJPEGImage(void);
__fastcall virtual ~TJPEGImage(void);
void __fastcall Compress(void);
void __fastcall DIBNeeded(void);
void __fastcall JPEGNeeded(void);
virtual void __fastcall Assign(Classes::TPersistent* Source);
virtual void __fastcall LoadFromStream(Classes::TStream* Stream);
virtual void __fastcall SaveToStream(Classes::TStream* Stream);
virtual void __fastcall LoadFromClipboardFormat(Word AFormat, unsigned AData, HPALETTE APalette);
virtual void __fastcall SaveToClipboardFormat(Word &AFormat, unsigned &AData, HPALETTE &APalette);
__property bool Grayscale = {read=GetGrayscale, write=SetGrayscale, nodefault};
__property bool ProgressiveEncoding = {read=FProgressiveEncoding, write=FProgressiveEncoding, nodefault};
__property TJPEGQualityRange CompressionQuality = {read=FQuality, write=FQuality, nodefault};
__property TJPEGPixelFormat PixelFormat = {read=FPixelFormat, write=SetPixelFormat, nodefault};
__property bool ProgressiveDisplay = {read=FProgressiveDisplay, write=FProgressiveDisplay, nodefault};
__property TJPEGPerformance Performance = {read=FPerformance, write=SetPerformance, nodefault};
__property TJPEGScale Scale = {read=FScale, write=SetScale, nodefault};
__property bool Smoothing = {read=FSmoothing, write=SetSmoothing, nodefault};
};
#pragma pack(push, 1)
struct TJPEGDefaults
{
TJPEGQualityRange CompressionQuality;
bool Grayscale;
TJPEGPerformance Performance;
TJPEGPixelFormat PixelFormat;
bool ProgressiveDisplay;
bool ProgressiveEncoding;
TJPEGScale Scale;
bool Smoothing;
} ;
#pragma pack(pop)
//-- var, const, procedure ---------------------------------------------------
extern PACKAGE TJPEGDefaults JPEGDefaults;
} /* namespace Jpeg */
using namespace Jpeg;
#pragma option pop // -w-
#pragma option pop // -Vx
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // jpeg
Размещено на Allbest.ru
Подобные документы
Понятие автоматизированных информационных систем, средства их разработки. Последовательность проектирования и разработки автоматизированной информационной системы "Туристическое агентство". Разработка ядра системы, создание интерфейса, внедрение.
курсовая работа [464,9 K], добавлен 22.04.2015Виды обеспечения автоматизированных информационных систем. Составление технического задания, разработка информационной системы, составление руководства пользователя к программе. Средства программирования распределенных систем обработки информации.
отчет по практике [1,1 M], добавлен 16.04.2017Обзор существующих автоматизированных информационных систем, их классификация и структура построения. Разработка инфологической модели базы данных для автоматизированной информационной системы руководителя тушения пожара, реализация в компьютерной СУБД.
дипломная работа [1,2 M], добавлен 07.06.2011Развитие информационных систем. Современный рынок финансово-экономического прикладного программного обеспечения. Преимущества и недостатки внедрения автоматизированных информационных систем. Методы проектирования автоматизированных информационных систем.
дипломная работа [1,5 M], добавлен 22.11.2015Понятие и виды информационно-аналитических систем. Разработка информационной системы, предназначенной для учета корреспонденции отдела канцелярии, с использованием передовых информационных технологий и современных вычислительных средств и средств связи.
отчет по практике [295,4 K], добавлен 07.03.2012Разработка системы, автоматизирующей ведение базы данных библиотеки. Основные требования к программному обеспечению. Модели локальных представлений. Архитектура информационной системы. Хранимые процедуры. SQL-скрипт создания базы данных. Текст программы.
дипломная работа [2,2 M], добавлен 28.01.2014Опыт создания автоматизированных информационных систем. Разработка автоматизированной информационной системы для строительного предприятия ООО "СТК Дело". Этапы проектирования базы данных для учета хранения строительных материалов на складе предприятия.
курсовая работа [1,7 M], добавлен 15.03.2015Анализ предметной области, этапы проектирования автоматизированных информационных систем. Инструментальные системы разработки программного обеспечения. Роль CASE-средств в проектировании информационной модели. Логическая модель проектируемой базы данных.
курсовая работа [410,6 K], добавлен 21.03.2011Требования к программному изделию и параметрам технических средств. Описание пользовательского интерфейса для автоматизированной системы учёта товаров на оптовом складе. Обоснование выбора языков программирования, организации входных и выходных данных.
дипломная работа [3,4 M], добавлен 02.04.2013Основание для разработки автоматизированной информационной системы "Будущий абитуриент". Технические требования к программному изделию. Порядок контроля и приемки продукта. Рассмотрение исходной базы данных. Описание интерфейса программного обеспечения.
дипломная работа [3,3 M], добавлен 08.02.2013