Высокоуровневые методы информатики и программирования

Автор работы: Пользователь скрыл имя, 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

Содержимое работы - 1 файл

!КУРСАЧ.doc

— 271.50 Кб (Скачать файл)

{

      CDialog::DoDataExchange(pDX);

      DDX_Text(pDX, IDC_KOD, m_strKod);

      DDX_Text(pDX, IDC_Kolvo, m_strKolvo);

      DDX_Text(pDX, IDC_Naim2, m_strNaim2);

} 
 

BEGIN_MESSAGE_MAP(CKolvoDobDlg, CDialog)

      ON_BN_CLICKED(IDC_KolvoDOB, &CKolvoDobDlg::OnBnClickedKolvodob)

      ON_BN_CLICKED(IDOK, &CKolvoDobDlg::OnBnClickedOk)

END_MESSAGE_MAP() 
 

// CKolvoDobDlg message handlers 

void CKolvoDobDlg::OnBnClickedKolvodob()

{

        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(CKolvoProsm) 

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(CDataExchange* pDX)

{

      CDialog::DoDataExchange(pDX);

      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_KolvoPROSM_NACH, &CKolvoProsm::OnBnClickedKolvoprosmNach)

      ON_BN_CLICKED(IDC_KolvoPROSM_PRED, &CKolvoProsm::OnBnClickedKolvoprosmPred)

      ON_BN_CLICKED(IDC_KolvoPROSM_SLED, &CKolvoProsm::OnBnClickedKolvoprosmSled)

      ON_BN_CLICKED(IDC_KolvoPROSM_KONEC, &CKolvoProsm::OnBnClickedKolvoprosmKonec)

      ON_BN_CLICKED(IDOK, &CKolvoProsm::OnBnClickedOk)

END_MESSAGE_MAP() 
 

// CKolvoProsm message handlers 

void CKolvoProsm::OnBnClickedKolvoprosmNach()

{

        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::OnBnClickedKolvoprosmPred()

{

        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_number);

    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::OnBnClickedKolvoprosmSled()

{

        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++;

Информация о работе Высокоуровневые методы информатики и программирования