Меню главного окна приложения описывается,
if(sinIs==true)//Если данные по синусу есть,
for(int i=0;i<640;i++)//то в цикле по 640 точкам
Обработка сообщений Windows 249
dc.SetPixel(i,y0-(int)(sine[i]*100),TColor::LtBlue);//выводим точки графика if(cosIs==true)//Если данные по косинусу есть,
for (int i = 0; i<640; i++) //то в цикле по
640 точкам dc.SetPixel(i,y0-(int)(cosine[i]*100),TColor::LtGreen);//выводим точки графика
} /*Главная
функция приложения OwlMain*/
int OwlMain(int,char*[]){return myApp().Run();}
Обработка сообщений от пунктов меню
Меню главного окна приложения описывается, как обычно, в файле ресурсов .rс. Значения идентификаторов пунктов меню (имена идентификаторов могут быть любыми) определены в файле .h. Для пункта выхода из приложения использован стандартный идентификатор СМ_ЕХIТ (со значением 24310), описанный в файле window.rh. С таким же успехом можно было использовать другое обозначение (например, CM_QUIT) или присвоить идентификатору СМ_ЕХIТ произвольное значение.
Для того, чтобы меню появилось в окне приложения, достаточно вызвать функцию AssignMenu(), принадлежащую классу TFrameWindow, с указанием в качестве параметра имени меню из файла ресурсов; этот вызов удобнее всего выполнить в
конструкторе класса MyWindow. Как и в случае API Windows, обработку сообщений от "корневых" пунктов меню (в нашем случае это пункты "Файл" и "Графики") Windows берет на себя: при выборе этих пунктов Windows отображает на экране соответствующие всплывающие меню (рис. 27.3). Нам же надо обрабатывать сообщения от пунктов всплывающих меню (их часто называют командами
меню), для чего необходимо включить в таблицу откликов сообщения EV_COMMAND - по одному на каждую команду меню (обратите внимание на отсутствие в обозначении сообщения EV_COMMAND префикса WM).
В отличие от макросов типа EV_WM_TIMER или EV_WM_GETMINMAXINFO, которые при расширении задают имена функций отклика, макрос EV_COMMAND требует указания двух параметров -идентификатора соответствующего пункта меню и имени прикладной функции отклика, предназначенной для обработки сообщения от этого пункта:
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий