Компоненты организации управления приложением

Характеристика особенностей объектно-ориентированной среды программирования Delphi. Компоненты организации управления приложением. Рассмотрение аспектов приложения-компонента ApplicationEvents. Характеристика основ отображения списка изображений.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 11.12.2013
Размер файла 775,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

then Forms[I].Width := Width;

end;

Размеры форм, превышающие размер экрана, урезаются этим кодом.

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

Еще одно полезное свойство объекта Screen -- Fonts (шрифты). Это свойство типа TStrings содержит список шрифтов, доступных на данном компьютере (свойство только для чтения).

Его можно использовать в приложении, чтобы проверять, имеется ли на компьютере тот или иной шрифт, используемый в приложении. Если нет -- то можно или дать пользователю соответствующее предупреждение, или сменить шрифт в приложении на один из доступных, или дать пользователю возможность самому выбрать соответствующий шрифт. Например, вы можете поместить в вашем приложении компонент списка TComboBox и при событии формы OnCreate загрузить его доступными шрифтами с помощью операторов:

ComboBox1.Items := Screen.Fonts;

ComboBox1.ItemIndex := 0;

Тогда в нужный момент пользователь может выбрать подходящий шрифт из списка. Пример использования свойства Screen.Fonts приведен в разделе 3.1.

В Delphi 5 в тип TScreen введено два новых свойства: HintFont и MenuFont типа TFont. Они хранят установленные в Windows шрифты отображения ярлычков и разделов меню.

Свойство Cursor объекта Screen определяет вид курсора. Если это свойство равно crDefault, то вид курсора при перемещении над компонентами определяется установленными в них свойствами Cursor. Но если свойство Cursor объекта Screen отлично от crDefault, то соответствующие свойства компонентов отменяются и курсор имеет глобальный вид, заданный в Screen. Этим можно воспользоваться для такой частой задачи, как изменение курсора на форму «песочные часы» во время выполнения каких-то длинных операций. Это можно сделать следующим образом:

Screen.Cursor := crHourGlass;

try

<выполнение требуемых длинных операций>

finally

Screen.Cursor := crDefault;

end;

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

var OldCursor: TCursor;

begin

OldCursor := Screen.Cursor;

Screen.Cursor := crHourGlass;

try

<выполнение требуемых долгих операций>

finally

Screen.Cursor := OldCursor;

end;

С помощью Screen можно получить доступ к активной в текущий момент форме вашего приложения через свойство ActiveForm. Если в данный момент пользователь переключился с вашего приложения на какое-то другое и, следовательно, ни одна форма вашего приложения не активна, то ActiveForm указывает на форму, которая станет активной, когда пользователь вернется к вашему приложению. В момент переключения фокуса с одной вашей формы на другую, генерируется событие OnActiveFormChange.

Аналогично с помощью свойства ActiveControl можно получить доступ к активному в данный момент оконному компоненту на активной форме. При смене фокуса генерируется событиеOnActiveControlChange.

Начиная с Delphi 4 предусмотрена возможность разработки мультиэкранных приложений, работающих одновременно с множеством мониторов. При этом приложение может решать, какие формы и диалоги надо отображать на том или ином мониторе. Свойства различных мониторов, используемых в таком приложении, можно найти с помощью свойства Screen.Monitors[I], где I-- индекс монитора. Индекс 0 относится к первичному монитору. Свойство Screen.Monitors[I] является списком объектов типа TMonitor, содержащих информацию о конкретных мониторах.

Среди свойств объектов типа TMonitor имеются Height -- высота и Width -- ширина экрана монитора. Кроме того имеются свойства Left и Тор. Эти свойства означают следующее. Все доступное экранное пространство можно представить себе разбитым на экраны отдельных мониторов, размещающихся слева направо и сверху вниз. Соответственно свойства Left и Торопределяют координаты левого верхнего угла экрана монитора в этом логическом экранном пространстве. Объекты типа TMonitor имеют также свойство MonitorNum -- номер монитора, представляющий собой его индекс в свойстве Screen.Monitors[I].

Для управления тем, на каком мониторе должна появляться та или иная форма, служит свойство формы DefaultMonitor. Это свойство может принимать значения:

dmDesktop - не предпринимается попыток разместить форму на конкретном мониторе

dmPrimary - форма размещается на первом мониторе в списке Screen.Monitors

dmMainForm - форма появляется на том мониторе, на котором размещена главная форма

dmActiveForm - форма появляется на том мониторе, на котором размещена текущая активная форма

Заключение

Данный курсовой проект был выполнен в полном соответствии поставленному заданию и отлажен в среде DELPHI 7. В ходе выполнения курсовой работы были разработаны программы с применением ActionList и ImageList. Созданы приложения для работы с Изображениями , а также приложения по выполнению действий с разными стандартными значению, создавались приложения со сплывающими окнами.

В результате выполнения данной курсовой работы, я убедилась в широких возможностях языка программирования Object Pascal и среды проектирования Delphi 7.

Список литературы

1. www.beluch.ru

2. Кузнецова, И.А. Практикум по Delphi для решения прикладных задач. - Нижний Новгород, 2005.

3. Чеснокова О.В. Delphi 2007. Алгоритмы и программы. - Москва, NT Press. 328 - 336 с.

4. www.delphilab.ru

5. www.delphi-manual.ru

6. www. DelphiMaster.ru

7. www.delphi.int.ru

Приложение №1

Цель приложения:

Создать программу для отображению картинки при помощи функций ActionList.

При создании программы были использованы :

ActionList - 2 компонента

Button - 2 компонента

Image

GroupBox

Руководство по использованию приложения:

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

Листинг программы.

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ActnList, StdCtrls, jpeg, ExtCtrls;

type

TForm1 = class(TForm)

ActionList1: TActionList;

Action1: TAction;

Button1: TButton;

Button2: TButton;

GroupBox1: TGroupBox;

ActionList2: TActionList;

Action2: TAction;

Image1: TImage;

procedure Action1Execute(Sender: TObject);

procedure Action2Execute(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Action1Execute(Sender: TObject);

begin

close;

end;

procedure TForm1.Action2Execute(Sender: TObject);

begin

Image1.Visible:=true;

end;

end.

Результат в скомпилированном приложении

Приложение №2

Рис.1 Результат скомпилированной программы

Рис. 2 Результат скомпилированной программы

Цель приложения:

Создать программу для отображению картинки при помощи функций ActionList. Работа с текстом в полях Edit и Memo. Создать кнопки с использованием компонента ActionList. Создание команд с использованием Application. Создание всплывающих меню PopMenu и Стандартного меню MainMenu.

В программе были использованы компоненты:

1)PageControl

2) BitBtn - 4 компонента

3) ActionList

4) ApplicationEvents1

5) ImageList

6) Memo

7) Button - 3 компонента

8) Image

9) MainMenu

10) PopMenu - 2 компонента

Руководство по использованию приложения:

При открытии программы мы видим две вкладки.

На первой вкладке, при нажатии кнопки «Сменить картинку» происходит смена изображений. На второй вкладке можно вводить текст либо в само поле, либо в отдельное окно связанное с кнопкой «Добавить текст». Так же реализованы функции «Копировать», «Вырезать», «Вставить» для основного поля. Дополнением являются кнопки всплывающего меню при нажатии правой кнопки мыши, по основному полю и дополнительному. Кнопка «Очистить поле» удаляет весь текст с основного поля и задает стандартный текст «Вводите текст…». По нажатию кнопки «Выход», будет выведено сообщение предупреждающее вас о том «Вы уверены в том что хотите покинуть программу??», после этого окна выходит всплывающее окно, которое при нажатии кнопки «Да» закрывает приложение, при нажатии кнопки «Нет» то программа продолжает работу. Так же в программе реализован быстрый выход по нажатию кнопки «Ctrl+Q». Через меню можно делать выход, вкладка файл. В меню опции реализованы кнопки управления главным полем. В меню справка в пункте «О программе» описывается имя создателя и год создания.

Листинг программы.

unit Unit5;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ImgList, StdCtrls, Buttons, ExtCtrls, ComCtrls, AppEvnts,

ActnList, Menus;

type

TForm5 = class(TForm)

ImageList1: TImageList;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

Image2: TImage;

BitBtn2: TBitBtn;

ApplicationEvents1: TApplicationEvents;

BitBtn1: TBitBtn;

Memo1: TMemo;

Edit1: TEdit;

BitBtn3: TBitBtn;

Button1: TButton;

ActionList1: TActionList;

Action1: TAction;

Button2: TButton;

Action2: TAction;

Action3: TAction;

Button3: TButton;

BitBtn4: TBitBtn;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

PopupMenu1: TPopupMenu;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

PopupMenu2: TPopupMenu;

N10: TMenuItem;

N11: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

N14: TMenuItem;

N15: TMenuItem;

N16: TMenuItem;

N17: TMenuItem;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

{procedure ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean); }

procedure FormShortCut(var Msg: TWMKey; var Handled: Boolean);

procedure BitBtn3Click(Sender: TObject);

procedure Action1Execute(Sender: TObject);

procedure Action2Execute(Sender: TObject);

procedure Action3Execute(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N9Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure N12Click(Sender: TObject);

procedure N13Click(Sender: TObject);

procedure N14Click(Sender: TObject);

procedure N15Click(Sender: TObject);

procedure N17Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

I: integer = 0;

implementation

{$R *.dfm}

procedure TForm5.BitBtn1Click(Sender: TObject);

begin

caption:= IntToStr(I);

Image2.Picture.Bitmap:=nil;

ImageList1.GetBitmap(I, Image2.Picture.Bitmap);

Inc(I);

end;

procedure TForm5.BitBtn2Click(Sender: TObject);

begin

Image2.Picture.Bitmap:=nil;

ImageList1.GetBitmap(I, Image2.Picture.Bitmap);

Inc(I);

end;

procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);

var

temp:Word;

begin

application.MessageBox('Вы уверены в том что хотите покинуть программу??','?????',MB_OK+MB_ICONASTERISK);

temp:=MessageBox(handle, PChar('Вы хотите выйти?'), PChar('Обдумайте прежде!'), MB_YESNO+MB_ICONQUESTION);

case

temp of

idyes:Application.Terminate;

idno: Action := caNone;

end;

end;

procedure TForm5.FormShortCut(var Msg: TWMKey; var Handled: Boolean);

begin

if Msg.CharCode = Ord('Q') then

begin

application.MessageBox('Вы уверены в том что хотите покинуть программу??','?????',MB_OK+MB_ICONASTERISK);

if Application.MessageBox(

'Действительно хотите завершить работу?',

'Подтвердите завершение',

MB_YESNOCANCEL + MB_ICONQUESTION) = IDYES

then Application.Terminate;

end;

end;

procedure TForm5.BitBtn3Click(Sender: TObject);

begin

Memo1.Lines.Add(edit1.text);

end;

procedure TForm5.Action1Execute(Sender: TObject);

begin

memo1.CopyToClipboard;

end;

procedure TForm5.Action2Execute(Sender: TObject);

begin

memo1.PasteFromClipboard;

end;

procedure TForm5.Action3Execute(Sender: TObject);

begin

memo1.CutToClipboard;

end;

procedure TForm5.BitBtn4Click(Sender: TObject);

begin

memo1.Lines.Clear;

memo1.Lines.Add('Вводите текст...')

end;

procedure TForm5.N2Click(Sender: TObject);

begin

form5.Close;

end;

procedure TForm5.N4Click(Sender: TObject);

begin

memo1.CopyToClipboard;

end;

procedure TForm5.N5Click(Sender: TObject);

begin

memo1.CutToClipboard;

end;

procedure TForm5.N6Click(Sender: TObject);

begin

memo1.PasteFromClipboard;

end;

procedure TForm5.N7Click(Sender: TObject);

begin

memo1.CopyToClipboard;

end;

procedure TForm5.N8Click(Sender: TObject);

begin

memo1.CutToClipboard;

end;

procedure TForm5.N9Click(Sender: TObject);

begin

memo1.PasteFromClipboard;

end;

procedure TForm5.N10Click(Sender: TObject);

begin

edit1.CopyToClipboard;

end;

procedure TForm5.N11Click(Sender: TObject);

begin

edit1.CutToClipboard;

end;

procedure TForm5.N12Click(Sender: TObject);

begin

edit1.PasteFromClipboard;

end;

procedure TForm5.N13Click(Sender: TObject);

begin

memo1.SelectAll;

end;

procedure TForm5.N14Click(Sender: TObject);

begin

memo1.SelectAll;

end;

procedure TForm5.N15Click(Sender: TObject);

begin

edit1.SelectAll;

end;

procedure TForm5.N17Click(Sender: TObject);

begin

application.MessageBox('Создатель: Рудяк Вадим 2013г.','О программе',MB_OK+MB_ICONASTERISK);

end;

end.

Размещено на Allbest.ru


Подобные документы

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

    методичка [98,1 K], добавлен 19.06.2011

  • Основные этапы развития языков программирования. Характеристика машинно-ориентированной, проблемно-ориентированной и процедурно-ориентированной систем программирования. Ознакомление с системами программирования Delphi, Visual Basic и Visual C++.

    курсовая работа [102,4 K], добавлен 21.07.2012

  • Создание компьютерной игры посредством среды программирования Delphi. Инструменты разработки, компоненты и методы для разработки программы. Логическая и физическая структуры, основные функции и элементы управления программы, ее тестирование и отладка.

    курсовая работа [27,9 K], добавлен 26.07.2014

  • Изучение истории достижений корпорации Oracle. Разработка клиент-серверного приложения на языке Delphi XE, реализующего возможность управления персоналом на предприятии. Основные структуры данных. Создание инструкции работы с приложением "Отдел кадров".

    дипломная работа [974,7 K], добавлен 08.06.2013

  • Разработка компоненты C++ Builder, состоящей из двух окружностей, одна из которых движется по периметру другой. Создание установочного пакета и тестового приложения с использованием разработанного компонента. Инсталляция и проверка готовой компоненты.

    курсовая работа [591,5 K], добавлен 05.12.2010

  • Исследование особенностей объектно-ориентированной среды программирования Borland Delphi. Описание процесса создания электронного пособия для изучения студентами и применения на уроках преподавателями. Характеристика технических и программных средств.

    дипломная работа [2,3 M], добавлен 10.06.2012

  • Использование объектно-ориентированной методологии при программировании математических процессов. Среда языка программирования Delphi для решения математических задач. Объектно-ориентированные, декларативные и императивные языки программирования.

    дипломная работа [1,8 M], добавлен 14.09.2011

  • Рассмотрение особенностей среды программирования Delphi, анализ клиент-серверной версии. Знакомство с библиотекой визуальных компонентов. Основные функции интеллектуального редактора. Характеристика требований к базам данных. Функции программы "Магистр".

    дипломная работа [1,5 M], добавлен 10.03.2013

  • Рассмотрение теоретических аспектов создания баз данных с применением системы объектно-ориентированного программирования Delphi. Ознакомление с компонентами доступа. Разработка базы данных "Библиотека". Описание основ интерфейса созданной программы.

    курсовая работа [1004,9 K], добавлен 26.10.2014

  • Рассмотрение основ использования информационных технологий в гостиничном бизнесе. Выбор системы управления базами данных. Описание информационной технологии. Выполнение программной реализации в среде объектно-ориентированного программирования Delphi 7.

    курсовая работа [2,1 M], добавлен 24.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.