Если этот пункт меню не
EV_COMMAND(CM_COSX,CmCosX), меню
EV_COMMAND(CM_200,Cm200), Макросы для откликов
EV_COMMAND(СМ_100,Cml00), на пункты
EV_COMMAND(СМ_50,Сm50), плавающего меню
EV_WM_RBUTTONDOWN,
END_RESPONSE_TABLE;//Завершаем таблицу откликов
/*Конструктор класса MyWindow*/ MyWindow::MyWindow(TWindow*parent,const char far* title):TframeWindow
(parent,title){
AssignMenu("MainMenu");//Загрузка меню из файла приложения
sinIs=false; cosIs=false; sinXIs=false; cosXIs=false;//Начальные значения
//индикаторов
k=100; // Начальное значение масштаба
popupMenu.AppendMenu(MF_STRING,CM_200,"1.0=200 пикселов");//Формируем
popupMenu.AppendMenu(MF_STRING,CM_100,"1.0=100 пикселов");//плавающее
popupMenu.AppendMenu(MF_STRING,CM_50,"1.0=50 пикселов");//меню из 3 пунктов
}
/*3амещенная функция
SetupWindow*/ void MyWindow::SetupWindow(){
TWindow::SetupWindow();//Вызываем замещенную функцию SetupWindow
menu=new TMenu(HWindow);//Образуем объект класса TMenu
}
/*3амещенная функция
CleanupWindow()*/ void MyWindow::CleanupWindowО{
delete menu;//Удаляем созданный ранее объект меню
TWindow::CleanupWindow();//Вызываем исходную функцию
}
252 . Глава27
/*Функции откликов на сообщения*/
void MyWindow::CmAbout(){
MessageBox("Демонстрация математических функций","О программе",
MB_ICONINFORMATION); } void MyWindow::CmSin(){
int state=menu->GetMenuState(CM_SIN,MF_BYCOMMAND);
if(state==MF_UNCHECKED)(// Если этот пункт меню не выбран
for(int i=0;i<640;i++)//Образовать
sine[i]=sin((double)i/20);//массив данных
sinIs=true;//Установить индикатор наличия данных
menu->CheckMenuItem(CM_SIN,MF_CHECKED);//Пометить команду меню
Invalidate();//Инициировать перерисовку окна
} else{//Если этот пункт меню уже выбран
for(int i=0;i<640;i++)//Очистить
sine[i]=0;//массив данных
sinIs=false;//Сбросить индикатор наличия данных
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий