![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Особенности программирования для Windows |
Содержание1. Программирование для Wi dows: особенности 1.1 Новый интерфейс - новые возможности 1.1.1 Окна и их компоненты 1.1.2 Управляющие элементы окна 1.1.3 Другие особенности интерфейса 1.2 DOS и Wi dows: разные подходы к программированию 1.2.1 Особенности работы с базами данных 1.3 Структура программ в CA-Visual Objec s 1.3.1 Объекты. Связи типа “владение&quo ; 1.3.2 Генерация и обработка событий 1.3.3 Другие типы связей в программах 1.3.4 Как все-таки работает программа в CA-Visual Objec s? 1. Программирование для Wi dows: особенностиВозможности, предлагаемые системой Wi dows конечным пользователям, весьма впечатляющи, если их сравнивать с возможностями старой доброй DOS: дружелюбный графический интерфейс, многозадачная среда, вездесущая мышка. В то же время для программистов-разработчиков коммерческих приложений эти возможности трансформируются в дополнительную головную боль, поскольку их реализация на практике сопряжена с довольно существенным усложнением программ, а в иных случаях попросту невозможна без использования новых средств и методов разработки. Тем не менее, не все так страшно, как может показаться в начале пути. Система программирования CA-Visual Objec s - чрезвычайно мощный инструмент, способный снять с разработчика большинство проблем, не связанных напрямую с логикой работы создаваемых приложений. Надо только научиться грамотно пользоваться этим инструментом. Попробуем прежде всего разобраться в основных отличиях Wi dows от DOS, непосредственно определяющих как новые требования к разрабатываемым приложениям, так и новые подходы к программированию. 1.1 Новый интерфейс - новые возможностиПервое, что бросается в глаза при переходе от DOS к Wi dows, это графическая операционная среда. Действительно, графический интерфейс пользователя (Graphical User I erface - GUI) составляет сердцевину Wi dows. Необходимость графического интерфейса продиктована не только и не столько эстетическими соображениями. Основное его назначение заключается в повышении уровня дружелюбности и информативности экрана дисплея, а также в предоставлении пользователю более широких возможностей по оперативному вмешательству в вычислительный процесс. Эти цели в GUI достигаются как за счет широкого использования графических шрифтов и цветовой гаммы, так и за счет введения новых типов элементов управления интерфейсом. Основу графического интерфейса в Wi dows составляют окна. Окна и их компоненты - &quo ;альфа&quo ; и &quo ;омега&quo ; GUI. Через окна и их элементы приложение, с одной стороны, осуществляет интерфейс с пользователем, а с другой - взаимодействует с Wi dows. Любое приложение, работающее в среде Wi dows, должно быть представлено как минимум одним окном. 1.1.1 Окна и их компоненты В CA-Visual Objec s различают три базовых типа окон: 1. Окно приложения - главное или единственное окно работающей программы. В соответствии со стандартом GUI, окно приложения может быть двух видов: однодокументным (Si gle Docume I erface - SDI) и многодокументным (Mul iple Docume I erface - MDI). Основное различие между этими видами окон состоит в том, что MDI-окна могут содержать в себе несколько дочерних окон, каждое из которых может работать независимо от других, в то время как SDI-окно является единственным на все приложение.
Классическим примером MDI-приложения является текстовый процессор WORD фирмы Microsof (рис.1.1). Запустив это приложение в работу, пользователь имеет возможность одновременной работы с несколькими документами, каждый из которых представляется самостоятельным дочерним окном. Рис 1.1 Пример MDI-приложения (в главном окне Microsof Word открыты два независимых дочерних окна - BOOK1. DOC и BOOK2. DOC)Примером SDI-приложения является игровая программа “Пасьянс&quo ;, входящая в комплект поставки Wi dows (рис.1.2). В этом приложении открывается единственное окно, и пользователь одновременно может “раскладывать&quo ; на компьютере всего один пасьянс. Рис 1.2 Пример SDI-приложенияЯсно, что MDI-стандарт предлагает пользователю гораздо более богатые возможности. Именно он в полной мере реализует “способности” Wi dows и наиболее подходит для разработки сложных приложений, обслуживающих базы данных. По этой причине мы и возьмем его за основу во всех дальнейших рассуждениях. В MDI-приложениях окно приложения называется также главным окном или окном-оболочкой. Это окно должно быть пустым, т.е. не содержать в себе никаких элементов управления, за исключением меню (см. ниже). 2. Окно данных - специфический вид окна, наилучшим образом приспособленный для работы с базами данных. Оно может содержать в себе любые элементы управления, обеспечивающие удобные средства работы с данными. С учетом сказанного в п.1, окно данных - одно из дочерних окон главного окна приложения. И именно поэтому окно данных в общем случае немодально, т.е. допускает возможность активизации любых других окон. Все окна данных размещаются в пределах главного окна приложения. 3. Диалоговое окно - окно с небольшим набором внутренних компонентов, основная цель которого состоит в выдаче пользователю сообщений и/или запросов и прием от него небольшого числа команд и параметров. В отличие от окна данных, диалоговое окно в общем случае модально, т.е. не позволяет активизировать другие окна до того, как оно будет закрыто. Вместе с тем, в практике программирования используют и немодальные диалоговые окна, например, для поиска информации или отображения динамики процессов с помощью прогресс-индикаторов. В общем случае окно состоит из следующих компонентов: область (панель) заголовка; область (панель) меню; область (панель) инструментов; область (панель) состояния: кнопка системного меню; кнопки максимизации и минимизации окна; рамка окна; рабочая область окна. Панель заголовка говорит сама за себя - на ней отображается заголовок данного окна. В многодокументном приложении заголовки окон играют важную роль, позволяя пользователю быстрее ориентироваться в отображаемой информации. Панель меню находится в верхней части окна. Она предназначена для хранения заголовков главного меню (меню первого уровня). Если заголовки не умещаются в одной строке, они переносятся на новую строку (т.е. панель меню расширяется). Панель меню имеется только у главного окна приложения. Если это окно пустое, то на панели меню отображаются заголовки меню главного окна. Если же главное окно имеет хотя бы одно дочернее окно (окно данных), то на его панели меню отображаются заголовки меню активного в данный момент дочернего окна.
Диалоговые окна не имеют собственного меню. Панель инструментов содержит в себе кнопки с характерными пиктограммами. Эти кнопки доступны только для мышки и служат для запуска наиболее часто используемых программных компонентов. В CA-Visual Objec s эта панель называется панелью управления, и кнопки на ней дублируют важнейшие варианты меню. Как правило, панель инструментов располагается вверху, непосредственно под панелью меню. Однако допускается также размещение этой панели в левой, правой или нижней частях окна. CA-Visual Objec s позволяет пользователю динамически с помощью мышки перемещать эту панель в удобное для него место. Панель состояния располагается у нижней кромки окна и служит для вывода сообщений о состоянии приложения, состоянии клавиатуры, а также, при желании, - времени и даты. Кнопка системного меню окна активизируется любо мышкой, либо клавишей Al . Системное меню содержит варианты управления окном, в том числе и вариант его закрытия. Закрытие окна означает завершение всех связанных с ним процессов. Закрытие главного окна приложения приводит к завершению этого приложения. Кнопка максимизации окна доступна только для мышки и служит для увеличения размеров окна до максимально возможных. Дочерние окна увеличиваются до размеров главного окна приложения, главное окно - до размеров экрана. Кнопка минимизации окна также доступна только для мышки и служит для свертывания окна до размеров иконки - пиктограммы стандартного размера (как правило, 32х32 точки). Рис.1.3 Стандартные компонеты окна в Wi dowsРамка окна служит его визуальной границей. Кроме того, по виду рамки пользователь может судить, допускает ли данное окно плавное динамическое изменение своих размеров с помощью мышки или клавиатуры. Рабочая область - это та часть окна, в которую не входит ни один из вышеперечисленных элементов. Именно в рабочей области разработчик располагает все необходимые для диалога с пользователем управляющие элементы. 1.1.2 Управляющие элементы окна Стандарт GUI, реализованный в Wi dows 3.1 и 3.11, предполагает наличие некоторого единого для всех приложений минимального набора управляющих элементов. В этот набор входят: командные кнопки (PushBu o ); переключатели (CheckBox); радиокнопки (RadioBu o ) и их группы (RadioBu o Group); однострочный элемент ввода (Si gleLi eEdi ); многострочный элемент ввода (Mul iLi eEdi ); блок списка (Lis Box); комбинированный блок списка (ComboBox); текстовое поле (Fixed ex ); панель вертикальной прокрутки или вертикальный лифт (Ver icalScrollBar); панель горизонтальной прокрутки или горизонтальный лифт (Horiso alScrollBar); элемент типа “группа&quo ; или рамка (GroupBox); иконка или пиктограмма (Ico ). В любой момент времени в активном окне непосредственно готов к действию лишь один из его управляющих элементов. Говорят, что этот элемент имеет фокус (или фокус ввода). Передача фокуса конкретному элементу осуществляется щелчком мышки на его изображении. Другой способ - с использованием клавиатуры. Он основан на том факте, что в любом окне имеется строго упорядоченный список всех его элементов.
Впрочем, мы, его коллеги, понимали в плане кодирования не больше его – на протяжении десятилетия доминирования DOS мы привыкли пользоваться любыми подручными средствами, лишь бы заставить программу работать. Объектно-ориентированная технология среди наших приоритетов в то время не значилась. Мы только что приступили к работе над новой программой последовательной связи, и наш отдел продаж требовал поставить ее как можно быстрее. В те времена такого понятия, как отдел тестирования, еще не существовало – штат сотрудников проекта ограничивался кодировщиками, пытавшимися всеми силами успеть к срокам, установленным отделом продаж. Грег в нашей компании трудился уже довольно долго и, надо сказать, весьма успешно, поэтому к постоянному давлению привык. По крайней мере, мне так казалось. У него даже была репутация ценного сотрудника – в основном потому, что он единственный из нас всех умудрялся сопровождать код старых приложений, которые уже не продавались. В отделе все стояли на ушах. Платформа Windows 3.0 только что появилась, и наши старания по части разработки приложений сочетались с попытками постичь идиосинкразическую природу интерфейса прикладного программирования Windows
1. Особенности программированного обучения
2. Метод программированного обучения в преподавании математики
4. Особенности связей с общественностью на различных уровнях организационной среды
5. Интегрированная среда Microsoft
9. Разработка базы данных `ДЕКАНАТ` в среде программирования "Delphi"
10. Программирование на Object Pascal в среде Delphi
11. Дистанционное обучение программированное
12. Мобильное программирование в среде ОС UNIX
13. Системы программирования и операционные системы
14. Техника программирования сложных окон в Visual Basic
15. Знакомство со средой программирования Borland C++ Builder6
16. Применение методов нейро-лингвистического программирования в обучении
18. Решение транспортной задачи линейного программирования в среде MS Excel
19. Системное программирование для операционных систем
20. Обучение решению задач из раздела "Основы алгоритмизации и программирования"
21. Прикладное программирование, 1 семестр
25. Применение методов линейного программирования в военном деле. Симплекс-метод
26. Аналитический обзор книги "Программирование на языке ассемблера..."
27. Математические методы и языки программирования: симплекс метод
28. Ответы на вопросы по курсу "Системное программирование" (Шпаргалка)
29. Понятие, назначение и составные элементы систем программирования
30. Лекции по высокоуровневым методам информатики и программированию
31. Курсовая работа по основам программирования. Игра "Паровоз"
32. VB, MS Access, VC++, Delphi, Builder C++ принципы(технология), алгоритмы программирования
33. Обучающая программа "Графика" программированию в графическом режиме на языке turbo-pascal 7.x
34. Язык программирования Паскаль и ветвление
36. Общая терминология программирования
37. Разработка игровой программы на языке программирования Turbo Pascal
41. Эволюция языков программирования
42. Программирование на языке Турбо Паскаль
43. Лабораторная работа №5 по "Основам теории систем" (Транспортные задачи линейного программирования)
45. Решение оптимизационной задачи линейного программирования
46. Постановка задачи линейного программирования и двойственная задача линейного программирования.
47. Экономические методы охраны окружающей среды и особенности их использования в России
48. Социально-психологические особенности профилактики правонарушений среди школьной молодежи
49. Социально-психологические особенности профилактики правонарушений среди школьной молодежи
50. Нейролингвистическое программирование /краткий обзор/
51. Вопросы для программированного контроля по курсу "Механика"
52. Программирование и планирование деятельности
53. Риск в задачах линейного программирования
57. Динамическое программирование (задача о загрузке)
58. Линейное и динамическое программирование
59. Система программирования squeak smalltalk –новый этап развития языка программирования смолток
61. Особенности активных методов обучения в высшей школе
62. Сущность процесса обучения и особенности преподавания экономических наук
63. Исследование психологических особенностей наркозависимых больных среди молодежи
64. Учет особенностей темперамента младшего школьника в процессе обучения
65. Особенности обучения профессионально-направленному диалогическому общению
66. Решение задачи методами линейного, целочисленного, нелинейного и динамического программирования.
67. Особенности наземно-воздушной, водной и почвенной среды
68. Математическая постановка транспортной задачи линейного программирования
69. Задача динамического программирования
73. Философские аспекты программирования
74. Delphi: программирование для всех!
75. Лабораторные работы по программированию
77. Языки программирования, их классификация и развитие
79. Алгоритмизация и программирование процессов на Fox
80. Линейное программирование: решение задач графическим способом
81. Общие сведения о языке программирования Qbasic
82. Объектно-ориентированное программирование
83. Основные алгоритмические конструкции и соответствующие им конструкции языка программирования QBasic
84. Основы программирования и вычислительной техники
85. Особенности операционной системы Windows 95
89. Программирование элементов разветвляющейся структуры
90. Разработка интерактивной среды обучения работе
92. Разум-ориентированное программирование
93. Windows Forms: Современная модель программирования для создания GUI приложений
94. Программирование служб: подробности
95. Алгоритмизация и программирование
96. Языки и технологии программирования
97. Программирование. Контрольная работа