Загрузил stycukogu

Проектирование интерфейса пользователя Win32 API: Руководство и примеры

Р.М.Ганеев
ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ
СРЕДСТВАМИ WIN32 API
Книга посвящена методическим основам проектирования пользовательского
интерфейса средствами Win32 API. Основное внимание уделено динамическому
проектированию и управлению базовыми элементами информационных систем окнами, органами управления, меню и диалоговыми панелями.
Книга написана доступным языком, насыщена примерами программной
реализации, все разделы сопровождаются вопросами контроля полученных
знаний и вариантами упражнений. Она поможет читателю овладеть методикой
проектирования эффективных приложений для Windows.
Для тех, кто знает основы языка Си и хочет проектировать компактные
быстродействующие приложения.
Оглавление
Предисловие
3
Глава 1. Создание окон
5
1.1. Определения
5
1.2. Класс окон
6
1.2.1. Описание используемых, классом окон ресурсов
6
1.2.2. Пример регистрации класса окон
8
1.2.3. Функция окна
9
1.3. Создание окон
12
1.4. Главная функция приложения
14
1.5. Структура текста приложения
17
1.6. Вспомогательные функции создания окон
20
1.6.1. Функции поиска и определения состояния окон
20
1.6.2. Функции перемещения окон
21
1.6.3. Сообщения приложения для пользователя
24
1.7. Примеры создания окон
27
1.7.1. Проверка наличия предыдущего экземпляра
28
1.7.2. Расположение окон черепицей
31
Контрольные вопросы
36
Упражнения
36
Глава 2. Органы управления
40
2.1. Кнопки
41
2.1.1. Создание кнопок
41
2.1.2. Кнопки и сообщения
43
2.1.3. Флажки и переключатели
49
2.2. Статический орган управления
50
2.3. Полоса прокрутки
50
2.3.1. Общие сведения
50
2.3.2. Создание полосы прокрутки
52
2.3.3. Простейшие полосы прокрутки
52
2.3.4. Сообщения от полосы прокрутки
55
2.3.5. Управление полосой прокрутки
2.3.6. Пример обработки сообщений от полос прокрутки
2.3.7. Новые функции управления полосами прокрутки
2.3.8. Пример окна приложения с полосой просмотра
2.4. Редактор текста
2.4.1. Создание редактора
2.4.2. Сообщения для редактора текста
2.4.3. Сообщения от редактора текста
2.4.4. Пример работы с однострочным редактором
2.5. Списки строк
2.5.1. Создание списка
2.5.2. Сообщения от списка
2.5.3. Сообщения для списка
2.5.4. Пример работы со списком
2.6. Комбинированный список
2.6.1. Создание комбинированного списка
2.6.2. Коды извещения
2.6.3. Сообщения для комбинированного списка
2.6.4. Пример работы с комбинированным списком
Контрольные вопросы
Упражнения
Глава 3. Вывод в окно
3.1. Сообщение WM_PAINT
3.2. Виды контекста отображения
3.3. Установка атрибутов контекста отображения
3.4. Вывод текста
3.4.1. Настройка параметров шрифта
3.4.2. Выбор шрифта в контекст отображения
3.4.3. Функции вывода текста
3.4.4. Пример вывода текста в окно
3.4.5. Определение метрик шрифта
3.5. Рисование геометрических фигур
3.5.1. Функции рисования точки
3.5.2. Функции рисования линий
3.5.3. Функции рисования замкнутых фигур
Контрольные вопросы
Упражнения
Глава 4. Меню
4.1. Элементы меню
4.2. Создание меню
4.2.1. Вставка элементов вменю
4.2.2. Удаление элементов из меню
4.2.3. Управление состоянием элементов меню
4.2.4. Получение информации о меню
56
58
63
64
68
68
69
70
71
74
74
74
74
77
80
80
80
81
82
85
86
89
90
95
105
112
112
115
116
117
119
129
129
130
139
141
142
145
146
148
149
155
159
167
4.3. Сообщения от меню
4.3.1. Сообщение WM_INITMENU
4.3.2. Сообщение WM_INITMENUPOPUP
4.3.3. Сообщение WM_COMMAND
4.3.4. Сообщение WM_MENUSELECT
4.4. Плавающее меню
4.5. Акселераторы
Контрольные вопросы
Упражнения
Глава 5. Панель инструментов и строка состояния
5.1. Панель инструментов
5.1.1. Создание панели инструментов
5.1.2. Управление состоянием кнопок панели
5.1.3. Вывод подсказок в панели инструментов
5.2. Строка состояния
5.2.1. Создание строки состояния
5.2.2. Сообщения о меню в строке состояния
Контрольные вопросы
Упражнения
Глава 6. Диалоговые панели
6.1. Характеристики диалоговых панелей
6.1.1. Единицы диалоговой панели
6.1.2. Стили диалоговой панели
6.1.3. Функция окна диалоговой панели.
6.2. Создание диалоговой панели
6.2.1. Создание модальной диалоговой панели
6.2.2. Создание немодальной диалоговой панели
6.2.3. Шаблон диалоговой панели
6.2.4. Пример немодальной диалоговой панели
6.3. Сообщения и диалоговые панели
6.4. Блокнот диалоговых панелей
6.5. Стандартные диалоговые панели
6.5.1. Панели для открытия или сохранения файлов
6.5.2. Панель для выбора цветов
6.5.3. Панель для выбора шрифта
Контрольные вопросы
Упражнения
Приложение 1
Приложение 2
Приложение 3
Приложение 4
170
171
171
171
171
172
176
187
188
191
191
191
201
210
220
220
223
232
232
234
234
234
235
237
238
239
240
240
255
260
271
286
286
296
301
309
309
313
318
327
328