Книга посвящена вопросам создания программ, не зависимых от платформ и работающих под управлением Windows nt, Windows 95 и Windows Рассматриваются основные



Скачать 398.2 Kb.
Pdf просмотр
Дата04.12.2016
Размер398.2 Kb.
Просмотров379
Скачиваний1
ТипРеферат

Книга посвящена вопросам создания программ, не зависимых от платформ и работающих под управлением Windows NT, Windows 95 и Windows 3.1. Рассматриваются основные методы использования в приложениях популярных элементов базового программирова- ния, таких как функции, сообщения, структуры данных. Кроме того, предлагаются методы реализации более сложных возможностей, которые предоставляют Windows 95 и
Windows NT для управления диалоговыми окнами и шрифтами, разработки пиктограмм и битовых образов, построения инженерных графиков и диаграмм, использования средств мультимедиа.
Книга написана доступным языком, насыщена примерами практических программ и поможет читателю овладеть техникой написания переносимых приложений для Windows.

Содержание
Введение 1
ЧАСТЬ I. ОСНОВНЫЕ ПОНЯТИЯ 5
Глава 1. Windows — эволюция и революция 5
Ранние поколения: DOS и Windows 3.x 6
Истоки 6
BIOS для Windows 8
Новое поколение: Windows NT и Windows 95 10
Windows как операционная система 10 16 бит против 32 бит 19
Характеристики Windows 3.x, Windows 95 и Windows NT 23
Революция в области обработки информации 25
С чего следует начать 25
Требования к программному обеспечению 26
Требования к аппаратуре 26
Что дальше? 27
Глава 2. Понятия и терминология Windows 28
Окно Windows 28
Визуальные компоненты интерфейса 29
Рамка 29
Заголовок окна 31
Кнопка управления или кнопка завершения 31
Системное меню 31
Кнопка минимизации 31
Кнопка максимизации 31
Кнопка завершения 32
Вертикальная полоса прокрутки 32
Горизонтальная полоса прокрутки 32
Полоса меню . . . . . . . . . . . . 3 2
Клиентская область ...33
Классы окон 33
Объектно-ориентированное п р о г р а м м и р о в а . . . . . . . 3 4
Пиктограммы . ....35
Курсоры 35
Текстовые курсоры 35
Окна сообщений 36

Диалоговые окна ...37
Шрифты 37
Битовые образы 38
Перья 38
Кисти 39
Сообщения 39
Формат сообщений 40
Источники сообщений 41
Обработка сообщений 42
Цикл обработки сообщений 42
Ресурсы Windows 43
Функции Windows 44
WINDOWS.H и связанные файлы заголовков 45
Нотация Windows 46
Элементы приложения Windows 47
Компилятор C/C++ 48
Редакторы ресурсов 48
Компилятор ресурсов 48
Компоновщик 48
Что дальше? 48
Глава 3. Доступ к оболочке Windows 49
Система координат 50
Основные режимы отображения 50
Координаты устройства 52
Поля вывода 52
Изменение пределов поля вывода и окна 53
Координаты, определяемые пользователем 53
Выбор начальных атрибутов окна 54
Вывод окна 69
Изменение вида окна 70
Часто используемые элементы управления и диалоговые окна 71
Статические элементы управления 71
Элементы управления — кнопки 71
Элементы управления — переключатели 71
Элементы управления — флажки 72
Списки 72
Окна редактирования 73
Полосы прокрутки ...73
Виртуальные клавиши 74
Системные таймеры 77
Как обеспечивается срабатывание таймера? 78
Эффективное использование механизма таймеров 78
Память 79
Распределение памяти с помощью операционной системы 80
Что дальше? 83
ЧАСТЬ П. ПРОЦЕДУРНОЕ ПРОГРАММИРОВАНИЕ В WINDOWS 87
Глава 4. Написание простых приложений Windows 87
Первая Windows программа 87
Несколько слов об идентификаторах 88

Элементы приложения Windows 89
Функция WinMain() 89
Регистрация класса окна 90
Создание первого окна 97
Вывод окна на экран и обновление окна 97
Создание цикла сообщений 98
Требования к функции окна 100
Сообщение WM_PAINT 107
Сообщение WM_DESTROY 108
Функция DefWindowProc() 108
Файлы проекта C/C++ 109
Файлы проекта Microsoft 109
Файлы проекта Borland 113
Создание исполняемого файла 115
Повторное использование шаблона Windows 116
Еще одно приложение 118
Файлы заголовков Windows 122
Файлы ресурсов 122
Что дальше? 125
Глава 5. Управление окном Windows 126
Понимание полос прокрутки 126
Терминология полос прокрутки 127
Взаимодействие полос прокрутки с системными таймерами 129
Файл приложения (TICKTAPE.C) 133
Использование полос прокрутки в приложении для расчета процесса погашения займа 136
Файл приложения (LOAN.CPP) 143
Новые функции полос прокрутки 147
Файл приложения (SCROLL.C) 154
Что дальше? 157
Глава 6. Использование графических и звуковых ресурсов в приложениях.... 158
Использование редактора ресурсов 158
Добавление пиктограмм 161
Создание оригинальной пиктограммы 161
Использование пиктограмм в Windows 95 164
Добавление курсоров 168
Добавление битовых образов 171
Использование фонографа (Sound Recorder) 174
Что дальше? 177
Глава 7. Разработка ресурсов меню и акселераторов клавиатуры 178
Основные понятия меню ... 178
Что такое меню? 179
Ресурсы меню и компилятор ресурсов 179
Часто используемые зарезервированные слова и опции меню 180
Создание акселераторов клавиатуры 182
Изменение размера графического образа 185
Файл заголовков (MENU 1.H) 189
Файл ресурсов (MENU1.RC) 189
Файл приложения (MENU 1.С) 189

Изменение цвета фона 190
Файл заголовков (MENU2.H) 196
Файл ресурсов (MENU2.RC) 197
Файл приложения (MENU2.C) 197
Получение информации о системе 199
Файл заголовков (MENU3.H) 204
Файл ресурсов (MENU3.RC) 204
Файл приложения (MENU3.C) 205
Получение списка файлов каталогов 207
Файл заголовков (MENU4.H) 213
Файл ресурсов (MENU4.RC) 213
Файл приложения (MENU4.C) 213
Что дальше? 218
Глава 8. Использование ресурсов диалоговых окон 219
Что такое диалоговое окно? 223
Редактор диалогов фирмы Microsoft 224
Для чего используется редактор диалогов? 224
Использование редактора ресурсов компилятора 225
Разработка простого диалогового окна About 231
Разработка диалоговых окон для ввода данных 233
Реализация простого диалогового окна About 234
Использование переключателей для выбора графических образов с помощью диалогового окна 241
Использование диалогового окна для ввода текста и целых чисел 252
Использование диалогового окна для ввода вещественных чисел 263
Разработка окон сообщений 272
Стандартные диалоговые окна 277
Заглядывая вперед 277
Глава 9. Работа с ресурсами шрифта 278
Терминология шрифтов Windows 278
Константы шрифта 279
Структура TEXTMETRIC 281
Структура LOGFONTA 282
Ячейка символа шрифта 283
Основные характеристики шрифта 284
Ширина шрифта 285
Автоматические кернинг и установка межстрочного интервала 286
Множества символов OEM и ANSI 287
Логические и физические шрифты 287
Векторные, растровые шрифты и шрифты TrueType 287
Схема отображения шрифтов 288
Широкий выбор семейств шрифтов 289
Стандартные шрифты 289
Принтерные шрифты 290
Приложения, управляющие шрифтами 290
Функция CreateFont() 291
Функция CreateFontIndirect() 292
Приложение FONT1 292
Приложение FONT2 297
Приложение FONT3 300

Приложение FONT4.C 305
Приложение FONT5 309
Приложение FONT6.C 318
Заглядывая вперед 326
Глава 10. Графические концепции и графические примитивы 327
Интерфейс графических устройств (GDI) 327
Оболочка GDI 328
Установленный по умолчанию режим отображения пикселов 328
Информация об инсталлированных устройствах 328
Использование идентификатора контекста устройства (hdc) 333
Изменение режимов отображения 334
Использование графических примитивов GDI 335
Часто используемые графические примитивы 335
Средства и методы GDI 343
Перья 344
Кисти 345
Изменение цветов фона 347
Изменение цветов текста 348
Простые приложения, использующие инструменты и методы GDI 350
Вывод множества графических форм 350
Создание нескольких областей вывода 355
Создание простой столбиковой диаграммы 365
Работа с битовыми образами .. 373
Функции BitBlt() и PlgBlt() 373
Загрузка и вывод на экран битовых образов 380
Обработка битовых образов при помощи функции Windows NT MaskBlt() 386
Вращение графических образов 391
Вращение прямоугольника 391
Вы готовы экспериментировать? 397
Глава 11. Основные идеи построения инженерных и математических
графиков 398
Затухающий синусоидальный сигнал 398
Более подробное рассмотрение DAMPWAVE.CPP 401
Ряд Фурье 404
Более подробное рассмотрение FOURIER.C 410
Логарифмический график 414
Более подробное рассмотрение LOGS.С 423
Варианты графиков 427
Глава 12. Разработка круговых, столбиковых и линейных диаграмм 428
Круговая диаграмма 428
Приложение PIE.C 437
Менеджер палитр 444
Использование логической палитры 444
Столбиковая диаграмма 446
Приложение BAR.C 458
Линейный график 463
Приложение LINE.C 473
Круговые диаграммы Windows NT 478
Варианты графиков 481

Глава 13. Специальные приложения: рисование, панели инструментов,
приемы анимации, видео и трехмерные изображения 482
РИСОВАНИЕ: Приложение SKETCH для рисования с помощью "мыши", со зву- ком мультимедиа 483
Файлы приложения SKETCH 483
Текст программы приложения SKETCH 490
ПАНЕЛИ ИНСТРУМЕНТОВ: Добавление панели инструментов и подсказок к приложению 492
Новый текст в данном приложении 501
АНИМАЦИЯ: trainA, простое приложение с анимацией 504
АНИМАЦИЯ: trainB, поезд на основе битового образа в сопровождении звука мультимедиа 509
АНИМАЦИЯ: Анимация в приложении STAR.C с использованием мировых коор- динат и области вывода Windows NT 514
АНИМАЦИЯ: Использование ресурсов в приложении SAUCER.C 519
ВИДЕО: Video — простой видеоплейер 526
Компоненты стандартного диалогового окна выбора файлов 532
Проигрывание файлов AVI 535
OPENGL: Приложение 3DOPENGL.CPP и мир программирования OpenGL 537
Файлы заголовков 3dopengl 539
Main() 541
Экспериментируйте и развлекайтесь 547
ЧАСТЬ III. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЕ ПРИЛОЖЕНИЯ
WINDOWS 551
Глава 14. Введение в библиотеку Borland ObjectWindows Library (OWL) ....551
Преимущества и недостатки библиотек классов 551
Оболочка Borland ObjectWindows 552
ObjectWindows: три объектно-ориентированные возможности 553
Абстракция 553
Инкапсуляция 554
Реакция на сообщения 554
Объект ObjectWindows 554
Шаблон программы для ObjectWindows, SWPO.CPP 556
Использование объектов в шаблоне SWPO 560
Шаблон SWPO 567
Приложение FONT.CPP — вариация SWPO 567
Построение приложения для работы со шрифтами 567
Приложение DAMP.CPP - вариация SWPO.CPP 570
Использование ресурсов 573
Глава 15. Использование Borland ObjectWindows и ресурсов 574
Техника Drag-and-Drop 574
Добавление ресурсов меню 580
Реализация функций drag-and-drop 581
Вы помните о меню? 585
Графические примитивы GDI с меню, клавишами акселератора и курсором 585
Файл с исходным текстом программы DRAW.CPP 592
Запуск DRAW.CPP 594

Приложение презентационной графики с курсором, меню и диалоговыми окнами ...596
Ресурсы диалоговых окон 606
Детали круговой диаграммы 609
Построение и тестирование приложения PIE.C 611
Что дальше? 611
Глава 16. Введение в библиотеку MFC 612
Для чего используется библиотека MFC? 612
Соглашения по разработке 613
Основные характеристики 614
Все начинается с CObject 615
Важные родительские классы 617
Простое приложение 619
Создание окна в рамках EASY.CPP 619
Выполнение приложения EASY.CPP 625
Завершенное приложение и программный шаблон 625
Файл заголовков SWPMFC.H 627
Файл приложения SWPMFC.CPP 628
Запуск SWPMFC 630
Простое обслуживание 630
Глава 17. Использование библиотеки MFC с ресурсами 631
Сложный гармонический сигнал с меню и диалоговыми окнами 631
Файл заголовков MFCFOUR.H 637
Файл заголовков ресурсов MFCFOUR.H, файл описания ресурсов MFCFOUR.RC
и файл описания диалоговых окон MFCFOUR.DLG 639
Файл приложения MFCFOUR.CPP 641
Запуск MFCFOUR 647
Производительность на различных платформах 648
Столбиковая диаграмма с меню и диалоговыми окнами 649
Файл заголовков MFCBAR.H 657
Файл заголовков ресурсов MFCBARR.H и файл описания ресурсов MFCBAR.RC...658
Файл приложения MFCBAR.CPP 660
Запуск MFCBAR 666
Что дальше? 667
ЧАСТЬ IV. НЕТРИВИАЛЬНЫЕ ВОПРОСЫ ПРОГРАММИРОВАНИЯ 671
Глава 18. Соглашения программирования Win32 671
Соглашения о переносе 672
Нет эквивалента WIN32 672
Устаревшие функции 673
Переносимые функции 673
Функции поддержки мультимедиа 674
Поддержка утилиты Profiler 675
Проблемы с функциями смешанных типов 675
Проблемы с сообщениями 676
Значения данных и константы 677
Макроопределения 678
Подробности переноса 678
Совет №1 — Будьте внимательны при описании процедуры окна 678
Совет №2 — Проанализируйте каждое использование WORD 679

Совет №3 — Проверьте сообщения 679
Совет №4 — Функции, использующие координаты 680
Совет №5 — Файл и память 680
Совет №6 — Комбинированные списки 680
Совет №7 — Измените функцию WinMain() 680
Совет №8 — Типы данных 681
Будьте внимательны и продолжайте 681
Глава 19. Построение библиотеки динамической компоновки 682
Построение библиотеки DLL 682
Построение приложения, вызывающего DLL 685
Глава 20. Построение приложений — хранителей экрана 690
Приложение хранителя экрана Microsoft Visual C++ (32-разрядная версия) 691
Файлы приложения M32SAVE 693
Приложение хранителя экрана Microsoft Visual C++ (16-разрядная версия) 700
Файлы приложения M16SAVE 701
Приложение хранителя экрана Borland OWL 706
Запуск приложения BOWLSAVE.SCR 720
Экспериментируйте и наслаждайтесь 720
Глава 21. Application Expert и Application Wizard 721
Application Expert фирмы Borland 722
Использование AppExpert 724
Построение приложения 732
Работа с текстом, сгенерированным AppExpert 733
Настройка текста BXPRTAPP 755
Мастер приложений Microsoft 755
Использование AppWizard 755
Построение приложения 761
Работа с текстом, сгенерированным AppWizard 763
Настройка текста MWIZARD 771
Что дальше? 771
Глава 22. Построение простых приложений OLE 772
Особенности и характеристики OLE 773
Объекты 773
Файлы 773
Данные 774
Включение , 774
Построение приложения контейнера OLE при помощи AppExpert.... 774
Использование AppExpert 775
Работа с приложением контейнера Borland 784
Построение приложения контейнера OLE при помощи AppWizard 786
Использование AppWizard 787
Работа с приложением контейнера Microsoft 792
Что теперь? 794
Предметный указатель 795


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


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал