Реферат по предмету "Информатика"


Создание приложений с использованием различных элементов

ЛАБОРАТОРНАЯ РАБОТА № 4-5

Цель.Практическое освоение навыков создания Windows-приложений, визуальное проектирование диалоговых панелей, однооконных и многооконных приложений,связывание элементов управления с событиями.

Программное обеспечение. ОС Windows; Visual C++

Оборудование.ПЭВМ IBM.


Порядок выполнения работы.

Создать проект программы.

Визуально спроектировать диалоговую панель.

Связать элементы управления с событиями.

Разработать отладочные тесты.

Загрузить систему программирования .

Создать программный модуль и запустить его на выполнение.

Выполнить отладку и получить результаты счета.

Оформить отчет, защитить лабораторную работу по контрольным вопросам и сдать преподавателю.


Содержание отчета.

Тема, цель и оборудование работы.

Индивидуальное задание.

Ход выполнения задания.

Исходные данные и протокол выполнения работы.

Выводы.


Индивидуальные задания

к лабораторной работе № 5.

Создать многооконное приложение в меню которого содержится пункт «ВЫЧИСЛЕНИЯ» и соответствующая кнопка на панели инструментов. При их выборе на экране должно появляться диалоговое окно, где согласно варианта задания по вводимых данным. Осуществляется расчет. Выбор расчета оргаанизовать с помощью кнопок или переключателей.

Вариант 5


Сумму элементов больших заданного числа;

Произведение положительных элементов


Код программы

// MainFrm.cpp : implementation of the CMainFrame class

//


#include "stdafx.h"

#include "L4_5.h"


#include "MainFrm.h"

#include "D.h"


#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif


/////////////////////////////////////////////////////////////////////////////

// CMainFrame


IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd)


BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)

//{{AFX_MSG_MAP(CMainFrame)

ON_WM_CREATE()

ON_COMMAND(ID_BUTTON32771, OnButton32771)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()


static UINT indicators[] =

{

ID_SEPARATOR, // status line indicator

ID_INDICATOR_CAPS,

ID_INDICATOR_NUM,

ID_INDICATOR_SCRL,

};


/////////////////////////////////////////////////////////////////////////////

// CMainFrame construction/destruction


CMainFrame::CMainFrame()

{

// TODO: add member initialization code here

}


CMainFrame::~CMainFrame()

{

}


int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)

{

if (CFrameWnd::OnCreate(lpCreateStruct) == -1)

return -1;

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP

| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||

!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))

{

TRACE0("Failed to create toolbar\n");

return -1; // fail to create

}


if (!m_wndStatusBar.Create(this) ||

!m_wndStatusBar.SetIndicators(indicators,

sizeof(indicators)/sizeof(UINT)))

{

TRACE0("Failed to create status bar\n");

return -1; // fail to create

}


// TODO: Delete these three lines if you don't want the toolbar to

// be dockable

m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);

EnableDocking(CBRS_ALIGN_ANY);

DockControlBar(&m_wndToolBar);


return 0;

}


BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)

{

if( !CFrameWnd::PreCreateWindow(cs) )

return FALSE;

// TODO: Modify the Window class or styles here by modifying

// the CREATESTRUCT cs


return TRUE;

}


/////////////////////////////////////////////////////////////////////////////

// CMainFrame diagnostics


#ifdef _DEBUG

void CMainFrame::AssertValid() const

{

CFrameWnd::AssertValid();

}


void CMainFrame::Dump(CDumpContext& dc) const

{

CFrameWnd::Dump(dc);

}


#endif //_DEBUG


/////////////////////////////////////////////////////////////////////////////

// CMainFrame message handlers


void CMainFrame::OnButton32771()

{

CD dial;

dial.DoModal();

}


// D.cpp : implementation file

//


#include "stdafx.h"

#include "L4_5.h"

#include "D.h"

#include "fstream.h"


#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif


/////////////////////////////////////////////////////////////////////////////

// CD dialog


CD::CD(CWnd* pParent /*=NULL*/)

: CDialog(CD::IDD, pParent)

{

//{{AFX_DATA_INIT(CD)

m_1 = 0;

m_2 = 0;

m_sl = 0;

m_p = 0;

//}}AFX_DATA_INIT

}


void CD::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CD)

DDX_Control(pDX, IDC_EDIT1, m_Edit);

DDX_Text(pDX, IDC_EDIT1, m_1);

DDX_Control(pDX, IDC_MSFLEXGRID1, m_GRID);

DDX_Text(pDX, IDC_EDIT2, m_2);

DDX_Text(pDX, IDC_EDIT3, m_sl);

DDX_Text(pDX, IDC_EDIT4, m_p);

//}}AFX_DATA_MAP

}


BEGIN_MESSAGE_MAP(CD, CDialog)

//{{AFX_MSG_MAP(CD)

ON_BN_CLICKED(IDC_BUTTON1, OnButton1)

ON_BN_CLICKED(IDC_BUTTON2, OnButton2)

ON_BN_CLICKED(IDC_BUTTON3, OnButton3)

ON_BN_CLICKED(IDC_BUTTON4, OnButton4)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

int s,p=1;


/////////////////////////////////////////////////////////////////////////////

// CD message handlers


void CD::OnButton1()

{

UpdateData();

int c=m_1;

UpdateData(FALSE);

ofstream f("dat.txt",ios::app);

f<<c<<endl;

int sl=m_sl;

if (c>sl)

{

s+=c;

}

if(c>0)

{

p=p*c;

}

m_Edit.SetFocus();

}


void CD::OnButton2()

{

ofstream vs("vspom.txt");

vs<<s;

ofstream vs1("vspom1.txt");

vs1<<p;


m_GRID.SetColWidth(0,1000);

m_GRID.SetColWidth(1,1000);

m_GRID.SetColWidth(2,1000);

m_GRID.SetColWidth(3,1000);

m_GRID.SetRow(0);

m_GRID.SetCol(0);

m_GRID.SetText("1 столбец ");

m_GRID.SetCol(1);

m_GRID.SetText("2 столбец");

m_GRID.SetCol(2);

m_GRID.SetText("3 столбец");

m_GRID.SetCol(3);

m_GRID.SetText("4 столбец");

m_GRID.SetRow(1);

UpdateData();

char str[15] ;

int i;

ifstream ff("dat.txt");

i=0;

while (!ff.eof())

{

i=i+1;

for(int j=0;j<=3;j++)

{

m_GRID.SetCol(j);

m_GRID.SetRow(i);

ff.getline(str, sizeof(str)) ;

m_GRID.SetText(str);

}

}

}


void CD::OnButton3()

{

ifstream vs("vspom.txt");

vs>>s;

UpdateData();

m_2=s;

UpdateData(FALSE);

}


void CD::OnButton4()

{

ifstream vs1("vspom1.txt");

vs1>>p;

UpdateData();

m_p=p;

UpdateData(FALSE);

}


Протокол выполнения программы:



Вывод: Во время выполнения данной лабораторной работы я освоил навыки создания Windows-приложений, визуального проектирования диалоговых панелей, однооконных и многооконных приложений, связывания элементов управления с событиями.



Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Задачи по гидравлике 2
Реферат Джейн Грей
Реферат Роман Виктора Пелевина "Жизнь насекомых"
Реферат Инфразвук. Действие на организм человека. Мероприятия по защите
Реферат Виды компьютерных сетей
Реферат Символикомифологический смысл произведений Пауло Коэльо
Реферат Приготування хліба Столичного формового
Реферат Структура генерального бюджета организации порядок и особенности его разработки
Реферат А. П. Давыдов Культура в переходную эпоху
Реферат История мировых войн XX века аналитический обзор электронных ресурсов
Реферат А. М. Горького уральское отделение российской академии наук проблемы теоретической и экспериментальной химии программа
Реферат Управление заёмными средствами
Реферат Этапы формирования высшей нервной деятельности у ребенка. Функционирование рецепторов
Реферат Marxism In The Ussr Essay Research Paper
Реферат Особливості образу "я" курсантів в процесі навчання у вищих військових навчальних закладах