Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

План заняття. Упражнения. Совершенствование проекта




Упражнения. Совершенствование проекта.

1. Изменить интерфейс программы: изменить шрифты, цвет экрана и букв.

Подсказка. Возможно придется в коде подкорректировать количество пробелов.

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

Подсказка. Воспользуйтесь свойствами Hint Showhint компонента ListBox1.

3. Сделать так, чтобы при нажатии клавиши Close появлялось бы окно сообщения “Вы уверены?”

Подсказка. Применить функцию MessageDlg.

Контрольні питання:

1. Надайте характеристику індикаторам CheckBox та CheckListBox.

2. Надайте характеристику компонентам TrackBar та ScrollBar.

3. Опишіть процедуру роботи компонента Timer.

4. Охарактеризуйте роботу компонента MainMenu - Головне меню.

5. Надайте характеристику компоненту HotKey.

6. Надайте загальну характеристику панелям Delphi.

7. Надайте загальну характеристику панелям загального призначення – Panel, GroupBox, Bevel, ScrollBox, Splitter.

8. Надайте характеристику багатосторінковим панелям та їх компонентам – TabControl, PageControl, TabSet, TabbedNoteBook, NoteBook.

9. Охарактеризуйте роботу інструментальних панелей та їх компонентів – ToolBar nf PageScroller.

10. Опишіть роботу перестроюваних панелей та їх компонентів CoolBar та ControlBar.

11. Охарактеризуйте роботу полоси стану – StatusBar.

 


САМОСТІЙНА РОБОТА СТУДЕНТА

ЗМІСТОВИЙ МОДУЛЬ 6: ПРОГРАМУВАННЯ З ГРАФАМИ

ТЕМА 6.4: ОБРОБКА ВИКЛЮЧНИХ СИТУАЦІЙ

 

Самостійне заняття №35 – Помилки та виключення

1. Поняття синтаксичних помилок

2. Поняття логічних помилок

3. Поняття динамічних помилок

4. Характеристика поняття виключна ситуація

 

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

1) Синтаксические ошибки возникают при нарушении синтак­
сиса языка. Эти ошибки выявляются компилятором на этапе раз­
работки программы. Компилятор указывает разработчику строку
в тексте программы, где имеется ошибка, и выдает соответствую­
щую информацию о ней.

2) Логические ошибки имеют место в случае неправильной реализации алгоритма. При этом программа продолжает работать, но выдает неправильные результаты.

3) Динамические ошибки, или ошибки выполнения, возникают при выполнении программы в результате неправильной работы опе­раторов, процедур или функций программы, а также операционной системы. Типичный пример такой ошибки - это деление на нуль.

Разработчик приложения должен учитывать возможность воз­никновения ошибок выполнения и обрабатывать их определен­ным образом. Для обработки динамических ошибок в Delphi вве­дено понятие исключительной ситуации.

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

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

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

Класс Exception входит в состав модуля SysUtils и явля­ется базовым для всех исключений. Потомки этого класса содер­жат большое количество исключений, которые могут возникнуть в процессе выполнения приложения. Любые новые классы исклю­чительных ситуаций должны также создаваться как потомки клас­са Exception. В этом случае обеспечивается возможность их распознавания и обработки как исключений.

Класс Exception имеет всего два свойства.

Свойство Message (тип String) содержит описание исклю­чительной ситуации. Этот текст обычно выводится в диалоговом окне глобального обработчика исключительных ситуаций.

Свойство HelpContext (тип THelpContext) содержит но­мер идентификатора контекстной помощи для объекта исключения. Данное свойство обеспечивает отображение соответствующего раз­дела справки при вызове контекстной помощи.

Основные методы класса Exception представлены ниже.

Метод Create (const Msg: String) позволяет создать объект исключительной ситуации, текст с описанием которой со­держится в параметре Msg.

Метод CreateFmt (const Msg: String; const Args: array of const) также служит для создания объекта исключительной ситуации, но дополнительно позволяет задавать текст сообщения в форматированном виде.

Метод CreateHelp (const Msg: String; Ahelp-Context: Integer) предназначен для создания объекта ис­ключения с заданием для него номера идентификатора контекст­ной помощи.

Метод CreateFmtHelp (const Msg: String; const Args: array of const; AhelpContext: Integer) ис­пользуется для создания объекта исключения и дает возможность задавать текст сообщения в форматированном виде и устанавливать номер идентификатора контекстной помощи для данного объекта.

Обработка конкретных исключительных ситуаций может осу­ществляться не только с использованием самого класса Excep­tion, но также при помощи большого числа потомков данного класса. В свою очередь, многие из потомков класса Exception также порождают новые классы, обеспечивающие обработку ис­ключительных ситуаций, что образует целую иерархию объектов исключений. Так, например, класс EIntError является потомком класса Exception. Он представляет собой базовый класс для об­работки ошибок, связанных с операциями над целыми числами. От данного класса происходит ряд других классов, предназначенных для обработки специализированных исключений, таких, как при­своение целочисленной переменной значения, выходящего за пре­делы допустимого диапазона (класс ERangeError), или деление целого числа на нуль (класс EDivByZero).

Контрольні питання

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

2. Навести характеристику поняття логічних помилок

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

4. Охарактеризувати поняття виключна ситуація


АУДИТОРНЕ ЗАНЯТТЯ

ЗМІСТОВИЙ МОДУЛЬ 6: ПРОГРАМУВАННЯ З ГРАФАМИ. ВІЗУАЛЬНІ КОМПОНЕНТИ. БАЗИ ДАНИХ

ТЕМА 6.5: ОРГАНІЗАЦІЯ ПРИКЛАДНИХ ЗАСТОСУВАНЬ

Лекція №48 – Керування прикладними застосуваннями




Поделиться с друзьями:


Дата добавления: 2014-12-25; Просмотров: 292; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.