СодержаниеМосковский инженерно-физический институт(государственный университет), 2004 1. Структура приложения Windows 2. Интерфейс графических устройств 3. Ресурсы: меню 4. Ресурсы: диалоговые окна Часть 2. Лабораторный практикум 1. структура приложения Windows Простейшая программа с главным окном Структура программы Типы данных Windows. Главная функция WinMain() Создать главное окно и показать Регистрация класса окна ZeroMemory (&wc,sizeof(wc)) Создание и показ окна HWND hwnd=CreateWindow(szClassName,// Ws_thickframe | ws_sysmenu | ws_minimizebox Ws_overlappedwindow & ~ws_maximizebox Сообщения Windows и цикл их обработки Рис. 1.2. Процедура создания и пересылки сообщения от мыши Рис. 1.3. Прохождение программного сообщения WM_CREATE Оконная функция LRESULT CALLBACK WndProc(HWND hwnd,UINT msg Макрос HANDLE_MSG и структурированиепрограммы LRESULT CALLBACK WndProc(HWND hwnd,UINT msg 2. Интерфейс графических устройств Простая программа, использующая средства GDI HPEN hRedPen,hGreenPen,hBluePen;// Обработка сообщений WMPAINT Контекст устройства Рисуем новыми инструментами Использование графических инструментов TEXTMETRIC tm;// 3. Ресурсы: меню Простая программа с меню Menuitem separator Файл ресурсов Описание меню в файле ресурсов POPUP следует перечень пунктов, или команд этого меню, который появится на экране при открывании меню. Перечень заключается в оп Main) имеет также вся линейка меню, в то время как элементы меню (в нашем случае меню "Фон" Menuitem separator Сообщение WMCOMMAND Программное создание меню Плавающее меню Инструментальная панель Id_btns bitmap "btns.bmp" Всплывающие подсказки LRESULT OnNotify (HWND hwnd, int wParam, LPNMHDR lParam) Таблицы строк и локализация программных продуктов 4. Ресурсы: диалоговые окна Простая программа с меню и диалогом Menuitem separator "Static", ss_center, 12, 4, 72, 25 Описание диалога в файле ресурсов CONTROL, имеющего следующий формат: CONTROL "текст", идентификатор, "класс", стиль, координаты CONTROL "Закрыть",ID_OK,"BUTTON",BS_PUSHBUTTON,27,32,43,12 Controls DIALOG 31, 6, 241, 116 Табл. 4.2. Некоторые стили элемента управления BUTTON Табл. 4.3. Некоторые стили элемента управления LISTBOX Табл. 4.4. Некоторые стили элемента управления COMBOBOX Обслуживание модального диалога BOOL CALLBACK DlgProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam){ Lresult – Модальный диалог как главное окно приложения Control "", id_1,"static", ss_left, 8, 8, 108, 10 Немодальный диалог Style ws_visible | ws_child Bs_autoradiobutton, 8, 28, 40, 12 Wsvisible | wschild LONG SendDlgItemMessage ( Список в диалоговом окне Окно редактирования и статический элемент управления EDIT, стиль WSBORDER Графика в диалоговом окне Перекрашивание диалогового окна и его элементов BOOL CALLBACK DlgProc(HWND hwnd,UINT msg HBRUSH DlgOnColorxxx( BOOL CALLBACK DlgProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam){ HBRUSH DlgOnColorListBox(HWND,HDC hdc,HWND,int){ Работы лабораторного практикума Работа 2. Главное окно приложения (пример 1-1 из настоящего пособия) Работа 3. Вывод в главное окно приложения текста и фигур (пример 2-1 из настоящего пособия) Работа 4. Вывод в главное окно приложения текста и фигур (индивидуальное задание А) Работа 5. Меню и модальный диалог (пример 4-1 из настоящего пособия) Работа 6. Меню (индивидуальное задание В) Работа 7. Модальный диалог в качестве главного окна приложения (индивидуальное задание С) Работа 8. Вывод графика в главное окно приложения (индивидуальное задание D) Работа 9. Немодальный диалог Работа 10. Диалог с окном редактирования Работа 11. Программное создание меню Работа 12. Плавающее меню Работа 13. График в диалоговом окне Работа 14. Инструментальная панель (tool bar) Работа 15. Инструментальная панель со всплывающими подсказками (tool tips) Работа 16. Пользовательские пиктограммы и курсоры Работа 17. Локализация программных продуктов Индивидуальные задания лабораторного практикума Задание B1. Задание C1. Задание А2. Задание B2. Задание C2. Задание А3. Задание B3. Задание C3. Задание C4. Задание B5. Задание C5. Задание А6. Задание B6. Задание C6. Задание А7. Задание B7. Задание C7. Задание А8. Задание B8. Задание C8. Задание B9. Задание C9. Задание B10. Задание C10 Задание D10 Задание А11. Задание C11. Задание D11 Задание C12. Задание D12 Задание B13. Задание C13. Задание D13 Задание А14. Задание B14. Задание C14. Задание D14 Задание B15. Задание C15. Задание D15 Задание B16. Задание C16. Задание D16 Задание А17. Задание B17. Задание C17. Задание D17 Задание А18. Задание B18. Задание C18. Задание D18 Задание B19. Задание C19. Задание D19 Задание А20. Задание B20. Задание C20 Задание B21. Задание C21. Задание D21 Задание B22. Задание C22. Bitmap " Задание D22 Задание А23. Задание C23. Задание А24. Задание B24. Задание C24. Задание D24 Задание C25. Задание B26. Задание C26.
|