Программирование под Win32


Программирование для Windows с помощью библиотеки объектов OWL - стр. 44


void Cmsin();//Функция обработки сообщения от пункта "Синус"

void CmCos();//Функция обработки сообщения от пункта "Косинус" public:

MyWindow(TWindow*parent,const char far* title);//Конструктор

DECLARE_RESPONSE_TABLE(MyWindow);//Объявляем таблицу откликов

}; DEFINE_RESPONSE_TABLE1(MyWindow,TFrameWindow)  //Описываем

EV_COMMAND(CM_ABOUT,CmAbout),                //таблицу откликов

EV_COMMAND(CM_SIN,CmSin),                   //от пунктов

EV_COMMAND(CM_COS,CmCos),                   //меню

END_RESPONSE_TABLE;/7Завершаем таблицу откликов /*Конструктор класса MyWindow*/ MyWindow::MyWindow(TWindow*parent,const char far* title):TframeWindow

(parent,title){

AssignMenu("MainMenu"); //Установка меню главного окна по идентификатору

// "MainMenu"

sinIs=false; cosIs=false;//Начальные значения индикаторов: данные отсутствуют

}

/*Функции откликов на сообщения*/ void MyWindow::CmAbout(){

MessageBox("Демонстрация математических функций","О программе", MB_ICONINFORMATION);

} void MyWindow::CmSin(){

for(int i=0;i<640;i++)//В цикле по 640 точкам

sine[i]=sin((double)i/20);//вычисляем и сохраняем в sine[] значения синуса

sinIs=true;//Данные для графика синуса есть

Invalidate();//Инициируем сообщение WM_PAINT

} void MyWindow::CmCos(){

for(int i=0;i<640;i++)//В цикле по 640 точкам

cosine[i]=cos((double)i/20);//вычисляем и сохраняем значения косинуса

cosIs=true;//Данные для графика косинуса есть

Invalidate();//Инициируем сообщение WM_PAINT

}

/*Замащающая функция InitMainWindov())*/ void MyApp::InitMainWindow(){

MyWindow* myWin=new MyWindow(0,"Программа 27-2");

SetMainWindow(myWin);

EnableBWCC () ; //Разрешаем загрузку и. использование

BWCC.DLL }

/*Функция обработки сообщения

WM_PAINT*/ void MyWindow: :Paint(TDC&dc,bool,TRect&) {

int y0=150;//Сдвиг начала координат по оси у

dc.MoveTo(0,у0);//Смещаем текущую позицию к началу оси X

dc.LineTo(640,y0);//Проводим ось X




Начало  Назад  Вперед



Книжный магазин