|
Программирование >> Процедурные приложения
HMENUm hMenuDefault; ресурс меню HACCELm hAccelTable; таблица горячих клавиш DWORD m dwPromptContext; BOOLm bHelpMode; если TRUE, активен режим вызова справки по[Shift+Fl] CFrameWnd* m pNextFrameWnd; следующее окно в списке приложения CRect m rectBorder; COleFrameHook* m pNotifyHook; CPtrList m listControlBars; массив панелей инструментов, связанных с данным окном intm nShowDelay; обработчики оконных сообщений afx msg int OnCreate(LPCREATESTRUCT IpCreateStruct); afx msg void.OnDestroy(); afx msg void OnClose(); afx msg void OnlnitMenu(CMenu*); afx msg void OnlnitMenuPopup(CMenu*, UINT, BOOL); afx msg void OnMenuSelect(OINT nltemlD, UINT nFlags, HMENU hSysMenu); afx msg LRESULT OnPopMessageString(WPARAM wParam, LPARAM IParam) ; afx msg LRESULT OnSetMessageString(WPARAM wParam, LPARAM IParam), protected: afx msg LRESULT OnDDEInitiate(WPARAM wParam, LPARAM IParam); afx msg LRESULT OnDDEExecute(WPARAM wParam, LPARAM IParam); afx msg LRESULT OnDDETerminate(WPARAM wParam, LPARAM IParam); afx msg LRESULT OnRegisteredMouseWheel(WPARAM wParam, LPARAM IParam); DECLARE MESSAGE MAP () friend class CWinApp; ); Первый параметр метода Create() позволяет задать имя класса окна в соответствии с синтаксисом стандартной API-функции RegisterClass(). Обычно этот параметр не используется и равен null. Реализация метода InitInstance( ) В классе CTheAppпереопределяется метод initlnstance() базового класса CWinApp: BOOL CTheApp::Initlnstance() m pMainWnd=new CMainWndO; m j>MainWnd->ShowWindow (m nCmdShow) ; m pMainWnd->UpdateWindow(); returnTRUE; } Оператор new вызывает конструктор CMainWnd (), рассмотренный в предыдущем параграфе. Переменная-член m pMainWnd(префикс га указывает на переменную-члена класса) определяет положение окна на экране. Функция ShowWindow() выводит окно на экран. Параметр m nCmdShow инициализируется конструктором класса CWinApp и определяет параметры отображения окна. Функция Updatewindow() перерисовывает содержимое окна. Конструктор В последнем блоке программы вызывается конструктор класса CWinApp: CTheAppTheApp; Запуск программы Рассмотренная нами программа очень проста. Приложение просто отображает свое окно, ничего не выводя в нем (рис. 18.1). Рис. 18.1. Окно простейшей MFC -программы Многократное использование одних и тех же базовых классов в различных приложениях - это основа проектирования программ на C++. Библиотеку MFC можно рассматривать как естественное и органичное расширение данного языка. Созданный нами программный код является основой для всех MFC -приложений, разрабатываемых в этой книге. В следующей главе мы создадим шаблон приложения, в котором осуществляется вывод информации в рабочую область окна. Глава 19. Создание MFC -приложений Шаблон MFC -приложения o Файл MFC SWP.H o Файл MFC SWP.CPP o Запуск программы Рисование графических примитивов в рабочей области окна o Файл GDI.CPP o Запуск программы Построение ряда Фурье o Файл FOURIER.H o Файлы ресурсов o Файл FOURIER.CPP o Запуск программы Построение гистограмм o Файл BARCHART.H o Файлы ресурсов o Файл BARCHART.CPP o Запуск программы Ранее, в главах 16 и 17, нами были рассмотрены ресурсы Windows, такие как меню, диалоговые окна, горячие клавиши. В предыдущей главе речь шла об основных принципах применения библиотеки MFC при создании приложений Windows. В настоящей главе мы попытаемся, воспользовавшись полученными знаниями о ресурсах и MFC , создать несколько полноценных 32-разрядных приложений. Проанализированы будут четыре различных приложения, что поможет вам лучше понять, как на практике используются возможности, предоставляемые библиотекой MFC . Примеры подобраны таким образом, чтобы знания, полученные при изучении одной программы, закреплялись при работе со следующей. После ознакомления с четвертым приложением вы будете иметь опыт, необходимый для самостоятельной работы по созданию профессиональных MFC -приложений. Шаблон MFC -приложения В предыдущей главе вы познакомились с простейшей MFC -программой, которая отображала на экране свое окно. Ее код можно рассматривать как основу для любого другого приложения Windows, выводящего в окно текст или графику. Первое из рассматриваемых в этой главе приложений, которое называется MFC SWP (MFC SimpleWindowsProgram), просто выводит строку текста в рабочую область окна. Прежде чем приступать к его изучению, обратимся к листингу программы. Собственно говоря, ниже показано два листинга: файл заголовков и программный файл. Вспомните, что в предыдущей главе содержимое файла заголовков было включено в программный файл. Здесь в файле заголовков приводится информация о том, как классы приложения порождаются от базовых классов библиотеки MFC . Такой стиль рекомендован разработчиками Microsoft. Вот текст файла MFC SWP.H:
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |