Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Заголовочный файл ресурсов win32mfcfourr. H, файл описания ресурсов win32mfcfour. Rc и файл описания окна диалога win32mfcfour. Dlg.

Читайте также:
  1. c. отношению цен ресурсов.
  2. Автоскопические описания с неспецифическими деталями
  3. Анализ материальных ресурсов
  4. Анализ методик оценки эффективности управленческих решений, требующих использования финансовых или иных инвестиционных ресурсов
  5. Анализ общих проблем водных ресурсов.
  6. Анализ состояния водных ресурсов.
  7. Взаимосвязь ресурсов с прибылью от продаж

В файле 24FOURR.H определены пять констант. IDM_FOUR, IDM_ABOUT и IDM_EXIT используются для обозначения пунктов меню, a IDD_TERMS и IDD_TITLE необходимы для окна диалога ввода данных.

 

файл WIN32MFCFOUR.DLG содержит описания окна диалога "О Программе" и окна диалога для ввода данных.

131. Научная графика с использованием ресурсов: меню, окна диалога и мультимедийного звука. Создание нового класса CMainWnd. Определение размера рабочей области окна. Рисование графика. Окно диалога "О Программе". Окно диалога для ввода данных. Обработка функции OnExit().

 

Приложение рисует в окне сумму ряда Фурье. Этот пример продемонстрирует, как с использованием Microsoft Foundation Classes для Windows 95 и Windows NT применить три ресурса: меню, окно диалога и мультимедийный звук. Чтобы воспроизвести звук, компьютер должен быть снабжен соответствующими средствами мультимедиа.

Для построения программы требуется несколько файлов. Звуковой двоичный файл WIN32MFCFOUR.WAV вам придется создать самостоятельно.

Ниже приведен заголовочный файл WIN32MFCFOURR.H.

#define IDM_FOUR 100

В следующем файле находятся описания классов для этой программы. Этот файл называется WIN32MFCFOUR.H.

class CMainWnd: public CFrameWnd

{

public:

CMainWnd();

afx_msg void OnPaint();

afx_msg void OnSize(UINT,int,int);

};

 

class CNTApp: public CWinApp

{

public:

virtual BOOL InitInstance();

};

Описания окна диалога программы приведены в файле WIN32MFCFOUR.DLG.

 

DLGINCLUDE RCDATA DISCARDABLE

{

"WIN32MFCFOURR.H\0"

}

AboutBox DIALOG 14,22,200,75

LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL

STYLE WS_BORDER|WS_CAPTION|WS_DLGFRAME|WS_POPUP

CAPTION "About Box"

FONT 8,"MS Sans Serif"

{

CTEXT "A MFC Fourier Series With",-1,30,5,144,8

}

FourierData DIALOG 74,21,142,70

LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL

STYLE DS_MODALFRAME|WS_POPUP|WS_VISIBLE|

WS_CAPTION|WS_SYSMENU

CAPTION "Forier Series Information"

FONT 8,"MS Sans Serif"

{

LTEXT "Title: ",-1,6,5,28,8

}

В файле описания ресурсов WIN32MFCFOUR.RC находится описание меню приложения.

 

#include <windows.h>

#include "WIN32MFCFOURR.H"

 

FourierMenu MENU

BEGIN

POPUP "Fourier Data"

BEGIN

MENUITEM "Fourier About...",IDM_ABOUT

END

END

rcinclude WIN32MFCFOUR.dlg

 

CNTApp theApp;

CMainWnd::CMainWnd()

{

Create((AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW,

LoadCursor(NULL,IDC_CROSS),

(HBRUSH) GetStockObject(LTGRAY_BRUSH),NULL)),

"A 32-bit MFC Fourier Series Under Windows 95 and NT",

WS_OVERLAPPEDWINDOW,rectDefault,NULL,"FourierMenu");

}

void CMainWnd::OnPaint()

{

CPaintDC dc(this);

DWORD dwBColor= RGB(0,0,0); // черный

int i,j,ltitle,ang;

double y,yp;

CFont newfont;

CFont* oldfont;

// создание поля для рисования

dc.SetMapMode(MM_ISOTROPIC);

dc.SetWindowExt(500,500);

dc.SetViewportExt(m_cxClient,-m_cyClient);

dc.SetViewportOrg(m_cxClient/20,m_cyClient/2);

ang= 0;

yp= 0.0;

// оси координат

dc.MoveTo(0,240);

dc.LineTo(0,-240);

dc.MoveTo(0,0);

dc.LineTo(400,0);

dc.MoveTo(0,0);

// рисуем

for(i= 0; i<= 400; i++)

{

for(j= 1; j<= nterms; j++)

{

y= (150.0/((j*2.0)-1.0))*sin(((j*2.0)-1.0)*0.015708*ang);

yp= yp+ y;

}

dc.LineTo(i,(int) yp);

yp-= yp;

ang++;

}

// готовим ресурс для мультимедийного звука

// проигриваем звук после завершения рисования

sndPlaySound(szWave, SND_SYNC);

//oldfont= dc.SelectObject(&newfont);

// удалям шрифт

dc.SelectObject(oldfont);

newfont.DeleteObject();

}

Создание нового класса CMainWnd.

Можно задать параметры объекта CMainWnd путем создания регистрационного класса при помощи AlxRegisterWndClass(). Регистрационный класс имеет много полей, четыре из которых легко изменить: стиль, курсор, фон и значок свернутого окна.


Дата добавления: 2015-12-08; просмотров: 60 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.009 сек.)