Автор работы: Пользователь скрыл имя, 24 Декабря 2010 в 15:49, курсовая работа
Имеется полная применяемость деталей в изделиях: код изделия, код детали, наименование, количество деталей в одном изделии. Имеется план выпуска изделий: код изделия, наименование, количество. Рассчитать комплектовочную ведомость на изделие, задаваемое по запросу.
Условия и постановка задачи……..………….………………………………………3
Распечатки листингов основных файлов:
Класс CIndex…………………………………………………….......…………..4
Класс CKodd………………………………………………………………………5
Класс CKodd…………………………………………………………………….8
Класс CFilesDlg……………………………………………………….….……10
Класс CKoddDobDlg…………………………………………….………………12
Класс CKoddProsm…………………………………………….………………...15
Класс CKoddPoisk…………………………………………….……...………….19
Класс CKolvoDobDlg…………………………………………………………...24
Класс CKolvoProsm…………………………………………………………….26
Класс CKolvoPoisk………………………………….…………………………..30
Класс CVedomDlg……………………………………………………………...34
Контрольный пример…………………………………………..……………………38
{
CDialog::DoDataExchange(
DDX_Text(pDX, IDC_KOD, m_strKod);
DDX_Text(pDX, IDC_Kolvo, m_strKolvo);
DDX_Text(pDX, IDC_Naim2, m_strNaim2);
}
BEGIN_MESSAGE_MAP(
ON_BN_CLICKED(IDC_
ON_BN_CLICKED(IDOK, &CKolvoDobDlg::OnBnClickedOk)
END_MESSAGE_MAP()
// CKolvoDobDlg
message handlers
void CKolvoDobDlg::
{
if (CheckInput())
{
Input(Kolvo);
Kolvo.Sozdanie();
ClearForm();
}
// TODO: Add your control notification handler code here
}
void CKolvoDobDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
OnOK();
}
void CKolvoDobDlg::Input(CKolvo &Kolvo)
{
UpdateData(TRUE);
Kolvo.Kod=m_strKod;
Kolvo.Kolvo=m_strKolvo;
Kolvo.Naim2=m_strNaim2;
}
void CKolvoDobDlg::ClearForm()
{
m_strKod="";
m_strKolvo="";
m_strNaim2="";
UpdateData(FALSE);
}
BOOL CKolvoDobDlg::CheckInput()
{
UpdateData(TRUE);
if(m_strKod=="")
{
MessageBox("Введите Код изделия", "Ошибка ввода",
MB_ICONEXCLAMATION);
return FALSE;
}
if (m_strKolvo=="")
{
MessageBox("Введите Кол-во","Ошибка ввода",
MB_ICONEXCLAMATION);
return FALSE;
}
if (m_strNaim2=="")
{
MessageBox("Введите Наименование","Ошибка ввода",
MB_ICONEXCLAMATION);
return FALSE;
}
return TRUE;
}
Класс
CKolvoProsm
Файл заголовков KolvoProsm.h
#pragma once
#include "Kolvo.h"
// CKolvoProsm
dialog
class CKolvoProsm : public CDialog
{
DECLARE_DYNAMIC(
public:
CKolvoProsm(CWnd* pParent = NULL); // standard constructor
virtual ~CKolvoProsm();
int curr_rec_number;
int fact_number;
CKolvo Kolvo;
void
Output(CKolvo& Kolvo);
// Dialog Data
enum { IDD = IDD_KolvoPROSM };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnBnClickedKolvoprosmNach();
public:
afx_msg void OnBnClickedKolvoprosmPred();
public:
afx_msg void OnBnClickedKolvoprosmSled();
public:
afx_msg void OnBnClickedKolvoprosmKonec();
public:
afx_msg void OnBnClickedOk();
public:
CString m_strKod;
public:
CString m_strKolvo;
public:
CString m_strNaim2;
public:
CString m_strNumber;
public:
virtual BOOL OnInitDialog();
};
Файл кодов KolvoProsm.cpp
// KolvoProsm.cpp : implementation file
//
#include "stdafx.h"
#include "Kurs.h"
#include "KolvoProsm.h"
// CKolvoProsm
dialog
IMPLEMENT_DYNAMIC(CKolvoProsm,
CDialog)
CKolvoProsm::CKolvoProsm(CWnd* pParent /*=NULL*/)
: CDialog(CKolvoProsm::IDD, pParent)
, m_strKod(_T(""))
, m_strKolvo(_T(""))
, m_strNaim2(_T(""))
, m_strNumber(_T(""))
{
Kolvo.Init();
curr_rec_number=0;
fact_number=-1;
}
CKolvoProsm::~CKolvoProsm()
{
}
void CKolvoProsm::DoDataExchange(
{
CDialog::DoDataExchange(
DDX_Text(pDX, IDC_KOD, m_strKod);
DDX_Text(pDX, IDC_Kolvo, m_strKolvo);
DDX_Text(pDX, IDC_Naim2, m_strNaim2);
DDX_Text(pDX, IDC_STATIC_NUMBER, m_strNumber);
}
BEGIN_MESSAGE_MAP(CKolvoProsm, CDialog)
ON_BN_CLICKED(IDC_
ON_BN_CLICKED(IDC_
ON_BN_CLICKED(IDC_
ON_BN_CLICKED(IDC_
ON_BN_CLICKED(IDOK, &CKolvoProsm::OnBnClickedOk)
END_MESSAGE_MAP()
// CKolvoProsm
message handlers
void CKolvoProsm::
{
int i=0;
fact_number=1;
do
{
Kolvo.ChtenieZap(i);
curr_rec_number=i;
i++;
}
while (Kolvo.Kod=="");
Output(Kolvo);
CString rec_number;
rec_number.Format("Запись 1 из %d",Kolvo.fact_kol);
m_strNumber=rec_number;
UpdateData(FALSE);
// TODO: Add your control notification handler code here
}
void CKolvoProsm::
{
int prev=curr_rec_number;
int prev_fact=fact_number;
int i=curr_rec_number-1;
do
{
if (i==-1)
{
curr_rec_number=-1;
break;
}
Kolvo.ChtenieZap(i);
if (Kolvo.Kod!="")
fact_number--;
curr_rec_number=i;
i--;
}
while (Kolvo.Kod=="");
if ((curr_rec_number==-1) || (fact_number<1))
{
MessageBox("Начало файла", "Ошибка", MB_ICONEXCLAMATION);
curr_rec_number=prev;
fact_number=prev_fact;
}
else
{
Kolvo.ChtenieZap(curr_rec_
Output(Kolvo);
CString rec_number;
rec_number.Format("Запись %d из %d",fact_number,
Kolvo.fact_kol);
m_strNumber=rec_number;
UpdateData(FALSE);
}
// TODO: Add your control notification handler code here
}
void CKolvoProsm::
{
int prev=curr_rec_number;
int prev_fact=fact_number;
int i=curr_rec_number+1;
do
{
Kolvo.ChtenieZap(i);
if (Kolvo.Kod!="")
fact_number++;
curr_rec_number=i;
i++;
Информация о работе Высокоуровневые методы информатики и программирования