亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? kzt.cpp

?? ISO9000質量管理小程序
?? CPP
字號:
// Kzt.cpp : implementation file
//

#include "stdafx.h"
#include "Ex07b.h"
#include "Kzt.h"
#include "Kztsplitter.h"
#include "KztList.h"


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CKzt

IMPLEMENT_DYNCREATE(CKzt, CFormView)

CKzt::CKzt()
	: CFormView(CKzt::IDD)
{
	//{{AFX_DATA_INIT(CKzt)
	m_gsj = 0.0f;
	//}}AFX_DATA_INIT
}

CKzt::~CKzt()
{
}

void CKzt::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CKzt)
	DDX_Text(pDX, IDC_EDIT1, m_gsj);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CKzt, CFormView)
	//{{AFX_MSG_MAP(CKzt)
	ON_BN_CLICKED(IDC_KZTADD, OnKztadd)
	ON_BN_CLICKED(IDC_KZTTONGJI, OnKzttongji)
	ON_BN_CLICKED(IDC_XSKZT, OnXskzt)
	ON_BN_CLICKED(IDC_KZTXG, OnKztxg)
	ON_BN_CLICKED(IDC_KZTNEXT, OnKztnext)
	ON_BN_CLICKED(IDC_KINSERT, OnKinsert)
	ON_BN_CLICKED(IDC_KREMOVE, OnKremove)
	ON_COMMAND(ID_FILE_PRINT_PREVIEW, OnFilePrintPreview)
	ON_COMMAND(ID_FILE_PRINT, OnFilePrint)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CKzt diagnostics

#ifdef _DEBUG
void CKzt::AssertValid() const
{
	CFormView::AssertValid();
}

void CKzt::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CKzt message handlers

void CKzt::OnKztadd() 
{
	// TODO: Add your control notification handler code here

	UpdateData();

	CSbtDoc *pDoc=GetDocument();
	ASSERT_VALID(pDoc);

	CGcsj * pGcsj;
	pGcsj=new CGcsj(m_gsj);
	pDoc->m_gcdataList.AddTail(pGcsj);

	pDoc->gccurPos=pDoc->m_gcdataList.GetHeadPosition();
	pDoc->UpdateAllViews(this);

//控制控件的允許,
	CWnd *m_Wnd=NULL;
	m_Wnd=GetDlgItem(IDC_KZTTONGJI);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KZTNEXT);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KZTXG);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KINSERT);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KREMOVE);
	m_Wnd->EnableWindow();
	
}


#ifdef _DEBUG

	 CSbtDoc * CKzt::GetDocument()
	{
		ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CSbtDoc)));
		return (CSbtDoc*)m_pDocument;
	
	}
#endif


void CKzt::OnInitialUpdate() 
{
	CFormView::OnInitialUpdate();
	CSbtDoc *pDoc=GetDocument();
	ASSERT_VALID(pDoc);

	CRect rectb(50,100,80,130);
	CButtonST  button1;
	button1.Create("sldk",BS_AUTOCHECKBOX,rectb,this,5);
	button1.ShowWindow(SW_SHOW);

	int m=pDoc->m_gcdataList.GetCount();
	if (m!=0)
  
	{

		CGcsj *pGcsj=pDoc->m_gcdataList.GetAt(pDoc->gccurPos);

		m_gsj=pGcsj->m_fgcsj;
	
	  //成員變量的數據傳給控制ID,在對話框中顯示數據
		UpdateData(false); 
		
		pDoc->m_gcdataList.GetNext(pDoc->gccurPos);
		if(pDoc->gccurPos==NULL)
				pDoc->gccurPos=pDoc->m_gcdataList.GetHeadPosition();
		// 為進行下一輪循環做準備
//控制控件的允許,
	CWnd *m_Wnd=NULL;
	m_Wnd=GetDlgItem(IDC_KZTTONGJI);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KZTNEXT);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KZTXG);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KINSERT);
	m_Wnd->EnableWindow();
	m_Wnd=GetDlgItem(IDC_KREMOVE);
	m_Wnd->EnableWindow();

	}	
	// TODO: Add your specialized code here and/or call the base class
//創建豐富的按鈕

//顯示圖形/
	m_btnXstuxing.SubclassDlgItem(IDC_XSKZT,this);
	m_btnXstuxing.SetIcon(IDI_XSTUXING1,IDI_XSTUXING2);
	m_btnXstuxing.SetActiveFgColor(RGB(255,0,0));
	m_btnXstuxing.SetBtnCursor(IDC_HAND);
//添加數據
	m_btnAdd.SubclassDlgItem(IDC_KZTADD,this);
	m_btnAdd.SetIcon(IDI_ADD2,IDI_ADD1);
	m_btnAdd.SetActiveFgColor(RGB(255,0,0));
	m_btnAdd.SetBtnCursor(IDC_HAND);
//數據統計
	m_btnTongji.SubclassDlgItem(IDC_KZTTONGJI,this);
	m_btnTongji.SetIcon(IDI_TONGJI1,IDI_TONGJI2);
	m_btnTongji.SetActiveFgColor(RGB(255,0,0));
	m_btnTongji.SetBtnCursor(IDC_HAND);
//修改數據
	m_btnXg.SubclassDlgItem(IDC_KZTXG,this);
	m_btnXg.SetIcon(IDI_XG1,IDI_XG2);
	m_btnXg.SetActiveFgColor(RGB(255,0,0));
	m_btnXg.SetBtnCursor(IDC_HAND);

//下一數據
	m_btnNext.SubclassDlgItem(IDC_KZTNEXT,this);
	m_btnNext.SetIcon(IDI_NEXT1,IDI_NEXT2);
	m_btnNext.SetActiveFgColor(RGB(255,0,0));
	m_btnNext.SetBtnCursor(IDC_HAND);
//插入數據
	m_btnInsert.SubclassDlgItem(IDC_KINSERT,this);
	m_btnInsert.SetIcon(IDI_INSERT1,IDI_INSERT2);
	m_btnInsert.SetActiveFgColor(RGB(255,0,0));
	m_btnInsert.SetBtnCursor(IDC_HAND);

//刪除數據
    m_btnDel256.SubclassDlgItem(IDC_KREMOVE, this);
    m_btnDel256.SetIcon(IDI_DEL1, IDI_DEL2);
    m_btnDel256.SetActiveFgColor(RGB(255,0,0));	
	m_btnDel256.SetBtnCursor(IDC_HAND);
}

void CKzt::OnKzttongji() 
{
	// TODO: Add your control notification handler code here
	CSbtDoc * pDoc=GetDocument();
	ASSERT_VALID(pDoc);
	pDoc->m_kztdataList.RemoveAll();
	if(pDoc->m_gcdataList.GetCount()%5!=0)
	{
		AfxMessageBox("請輸入5的倍數個數據");
		return;
	}

	//統計控制圖分組數據Xi,R
	int i=0;
	float zleiji=0;//求總的累計量,便于求XI平均值的平均值即pDoc->k_xcl
	float xleiji=0;
	float rleiji=0;
	POSITION pos=pDoc->m_gcdataList.GetHeadPosition();
//	POSITION pos2=pDoc->m_kztdataList.GetHeadPosition();
	while (pos!=NULL)
	{
		float max=-10000;
		float min=10000;
		float leiji=0;

		

		do
		{
			i++;
			CGcsj *pGcsj=pDoc->m_gcdataList.GetNext(pos);
			leiji=leiji+pGcsj->m_fgcsj;
			if (max<pGcsj->m_fgcsj)
				max=pGcsj->m_fgcsj;
			if (min>pGcsj->m_fgcsj)
				min=pGcsj->m_fgcsj;

		}
		while(i%5!=0);
		CKzttjsj *pKzttjsj ;
		pKzttjsj=new CKzttjsj();
		pKzttjsj->k_leiji=leiji;
		pKzttjsj->k_R=max-min;
		pKzttjsj->k_middle=leiji/5;

		pDoc->m_kztdataList.AddTail(pKzttjsj);

		xleiji=xleiji+pKzttjsj->k_middle;
		rleiji=rleiji+pKzttjsj->k_R;

	}
//統計	XUCL,K_XCL,K_XLCL

	pDoc->k_xcl=xleiji*5/i;
	pDoc->k_Rcl=rleiji*5/i;
	pDoc->k_xucl=pDoc->k_xcl+pDoc->k_A2*pDoc->k_Rcl;
	pDoc->k_xlcl=pDoc->k_xcl-pDoc->k_A2*pDoc->k_Rcl;

	pDoc->k_Rucl=pDoc->k_D4*pDoc->k_Rcl;


	pDoc->UpdateAllViews(this);

//控制控件的允許,
	CWnd *m_Wnd=NULL;
	m_Wnd=GetDlgItem(IDC_XSKZT);
	m_Wnd->EnableWindow();
}

void CKzt::OnXskzt() 
{
	// TODO: Add your control notification handler code here
	CSbtDoc * pDoc=GetDocument();
	ASSERT_VALID(pDoc);

	pDoc->b_xskzt=true;
	pDoc->UpdateAllViews(this);
}

void CKzt::OnKztxg() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	CSbtDoc * pDoc=GetDocument();
	ASSERT_VALID(pDoc);

	pDoc->m_gcdataList.GetPrev(pDoc->gccurPos);
		if(pDoc->gccurPos==NULL)
				pDoc->gccurPos=pDoc->m_gcdataList.GetTailPosition();

	CGcsj *pGcsj;
    pGcsj=pDoc->m_gcdataList.GetAt(pDoc->gccurPos);
	pGcsj->m_fgcsj=m_gsj;
	pDoc->m_gcdataList.GetNext(pDoc->gccurPos);

		if(pDoc->gccurPos==NULL)
				pDoc->gccurPos=pDoc->m_gcdataList.GetHeadPosition();
	pDoc->UpdateAllViews(this);
	
}

void CKzt::OnKztnext() 
{
	// TODO: Add your control notification handler code here
	CSbtDoc *pDoc=GetDocument();
	ASSERT_VALID(pDoc);


	if(pDoc->gccurPos!=NULL)   //
	{

		CGcsj *pGcsj=pDoc->m_gcdataList.GetAt(pDoc->gccurPos);

		m_gsj=pGcsj->m_fgcsj;
	
	  //成員變量的數據傳給控制ID,在對話框中顯示數據
		UpdateData(false); 
		
		pDoc->m_gcdataList.GetNext(pDoc->gccurPos);
		if(pDoc->gccurPos==NULL)
				pDoc->gccurPos=pDoc->m_gcdataList.GetHeadPosition();
		// 為進行下一輪循環做準備
	}
	else
		MessageBox("當前列表中沒有數據!");
	pDoc->UpdateAllViews(this);

	
}

void CKzt::OnKinsert() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	CSbtDoc * pDoc=GetDocument();
	ASSERT_VALID(pDoc);

	CGcsj * pGcsj;
	pGcsj=new CGcsj(m_gsj);	
	pDoc->m_gcdataList.InsertBefore(pDoc->gccurPos,pGcsj);

	pDoc->SetModifiedFlag();
	pDoc->UpdateAllViews(this);	
}

void CKzt::OnKremove() 
{
	// TODO: Add your control notification handler code here
	CSbtDoc * pDoc=GetDocument();
	ASSERT_VALID(pDoc);

	CGcsj *pGcsj=pDoc->m_gcdataList.GetPrev(pDoc->gccurPos);
		if(pDoc->gccurPos==NULL)
				pDoc->gccurPos=pDoc->m_gcdataList.GetTailPosition();
	pDoc->m_gcdataList.RemoveAt(pDoc->gccurPos);
	pDoc->gccurPos=pDoc->m_gcdataList.GetHeadPosition();

	pDoc->SetModifiedFlag();
	pDoc->UpdateAllViews(this);	
}

void CKzt::OnFilePrintPreview() 
{
	// TODO: Add your command handler code here
	CKztsplitter * pFrame=(CKztsplitter*)GetParentFrame();
	CKztList* pList=(CKztList*)(pFrame->m_splitterWnd.GetPane(0,1));
	::SendMessage(pList->m_hWnd,WM_COMMAND,ID_FILE_PRINT_PREVIEW,NULL);
}

void CKzt::OnFilePrint() 
{
	CKztsplitter* pFrame=(CKztsplitter*)GetParentFrame();
    CKztList* pList=(CKztList*)(pFrame->m_splitterWnd.GetPane(0,1));
	::SendMessage(pList->m_hWnd,WM_COMMAND,ID_FILE_PRINT,NULL);	

}



void CKzt::CalcWindowRect(LPRECT lpClientRect, UINT nAdjustType) 
{
	// TODO: Add your specialized code here and/or call the base class
	
	CFormView::CalcWindowRect(lpClientRect, nAdjustType);
}

BOOL CKzt::PreTranslateMessage(MSG* pMsg) 
{
	// TODO: Add your specialized code here and/or call the base class

	if (pMsg->message==WM_KEYDOWN&&pMsg->wParam==VK_RETURN&&pMsg->hwnd==((GetDlgItem(IDC_EDIT1))->m_hWnd))
	{
		UpdateData();

		CSbtDoc *pDoc=GetDocument();
		ASSERT_VALID(pDoc);

		CGcsj * pGcsj;
		pGcsj=new CGcsj(m_gsj);
		pDoc->m_gcdataList.AddTail(pGcsj);

		pDoc->gccurPos=pDoc->m_gcdataList.GetHeadPosition();
		pDoc->UpdateAllViews(this);

//控制控件的允許,
		CWnd *m_Wnd=NULL;
		m_Wnd=GetDlgItem(IDC_KZTTONGJI);
		m_Wnd->EnableWindow();
		m_Wnd=GetDlgItem(IDC_KZTNEXT);
		m_Wnd->EnableWindow();
		m_Wnd=GetDlgItem(IDC_KZTXG);
		m_Wnd->EnableWindow();
		m_Wnd=GetDlgItem(IDC_KINSERT);
		m_Wnd->EnableWindow();
		m_Wnd=GetDlgItem(IDC_KREMOVE);
		m_Wnd->EnableWindow();
		
		CEdit * pEdit=(CEdit*)GetDlgItem(IDC_EDIT1);
		pEdit->SetSel(0,-1,true);
	}
	return CFormView::PreTranslateMessage(pMsg);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品久久艾草纯爱| 精品国产髙清在线看国产毛片 | 在线精品亚洲一区二区不卡| 三级不卡在线观看| 亚洲欧洲日韩综合一区二区| 欧美精三区欧美精三区| 成人精品视频.| 青青草国产精品亚洲专区无| ㊣最新国产の精品bt伙计久久| 日韩欧美激情四射| 欧美日韩国产在线播放网站| 成人av网址在线观看| 国产主播一区二区| 日本伊人精品一区二区三区观看方式 | 亚洲精品国产第一综合99久久| 欧美在线看片a免费观看| 成人一区二区三区中文字幕| 欧美aaaaaa午夜精品| 夜夜爽夜夜爽精品视频| 久久国产人妖系列| 亚洲3atv精品一区二区三区| 日韩久久精品一区| 日韩三级.com| 精品国产一区a| 精品国产免费人成在线观看| 精品剧情v国产在线观看在线| 欧美在线色视频| 欧美日韩一区中文字幕| 欧美午夜片在线观看| 欧美日韩国产综合一区二区| 欧美丰满美乳xxx高潮www| 欧美群妇大交群中文字幕| 91精品国产乱码| 国产亚洲一本大道中文在线| 国产精品久久国产精麻豆99网站| 亚洲特黄一级片| 爽好久久久欧美精品| 精品一区二区三区免费播放| 成人黄动漫网站免费app| 欧美特级限制片免费在线观看| 4438亚洲最大| 国产精品久久久久久妇女6080 | www.性欧美| 欧美亚洲综合网| 欧美videossexotv100| 国产精品国产精品国产专区不片| 悠悠色在线精品| 精品一区二区三区香蕉蜜桃| 99re成人在线| 精品国产一区二区在线观看| 亚洲视频一区二区在线| 日韩va亚洲va欧美va久久| 成人黄色在线网站| 欧美一级二级三级蜜桃| 国产精品乱人伦中文| 蜜臀久久久99精品久久久久久| eeuss鲁片一区二区三区在线看| 欧美日精品一区视频| 国产精品三级av| 久久精品国产第一区二区三区| 99久久久精品免费观看国产蜜| 91精品国产黑色紧身裤美女| 中文字幕永久在线不卡| 老司机精品视频线观看86| 欧美制服丝袜第一页| 久久久精品蜜桃| 亚洲男同性视频| 国产一区在线观看视频| 欧美日韩高清一区二区| 亚洲少妇中出一区| 国产一区二区三区| 日韩午夜电影av| 亚洲第一电影网| 一本色道久久综合狠狠躁的推荐| 久久精子c满五个校花| 美脚の诱脚舐め脚责91| 欧美美女喷水视频| 亚洲成人自拍一区| 欧美做爰猛烈大尺度电影无法无天| 久久亚洲二区三区| 极品美女销魂一区二区三区| 91精品欧美综合在线观看最新 | 538在线一区二区精品国产| 亚洲免费观看在线视频| 99re视频精品| 亚洲色图一区二区三区| 成人av电影免费观看| 国产清纯白嫩初高生在线观看91| 久久成人免费网| 日韩免费观看2025年上映的电影 | 久久精品av麻豆的观看方式| 欧美人与性动xxxx| 日本不卡一区二区三区高清视频| 欧美三级电影在线观看| 午夜精品久久久久久| 欧美欧美欧美欧美首页| 亚洲成a天堂v人片| 欧美日韩一级片网站| 艳妇臀荡乳欲伦亚洲一区| 在线观看不卡视频| 亚洲高清一区二区三区| 欧美日本在线一区| 久久国产精品色| 久久久久久久综合狠狠综合| 国产盗摄一区二区三区| 欧美国产综合色视频| 成人avav影音| 一区二区三区在线观看视频| 欧美性高清videossexo| 午夜精品123| 精品对白一区国产伦| 国产传媒久久文化传媒| 亚洲一区二区三区四区在线观看 | 国产精品一区二区三区乱码| 日本一区二区三级电影在线观看| 成人中文字幕在线| 亚洲乱码国产乱码精品精可以看| 欧美中文字幕亚洲一区二区va在线| 亚洲国产视频直播| 精品盗摄一区二区三区| 国产精品自拍在线| 亚洲欧美激情视频在线观看一区二区三区| 色婷婷久久一区二区三区麻豆| 午夜伊人狠狠久久| 精品99久久久久久| 色综合视频一区二区三区高清| 丝袜亚洲精品中文字幕一区| 久久久99久久精品欧美| 91国产成人在线| 国产一区二区伦理片| 亚洲女爱视频在线| 精品国产91久久久久久久妲己| 95精品视频在线| 久久精品国产77777蜜臀| 亚洲欧美日韩国产手机在线| 日韩欧美成人一区二区| av激情综合网| 久久成人18免费观看| 亚洲人精品午夜| 26uuu亚洲综合色| 欧美视频在线观看一区二区| 国产老肥熟一区二区三区| 亚洲一二三四久久| 欧美国产禁国产网站cc| 欧美福利电影网| 97久久精品人人做人人爽| 日韩av高清在线观看| 亚洲三级在线看| 久久久精品2019中文字幕之3| 欧美日韩国产123区| 91麻豆自制传媒国产之光| 激情国产一区二区| 日本sm残虐另类| 亚洲一区在线观看网站| 国产精品久久久久久久久图文区| 日韩欧美视频在线| 欧美日韩第一区日日骚| 色av综合在线| 99国产一区二区三精品乱码| 国产一区二区三区蝌蚪| 毛片av中文字幕一区二区| 蜜乳av一区二区| 亚洲视频一区在线| 国产精品久久久久久久久快鸭 | 91麻豆视频网站| av在线不卡免费看| 国产suv精品一区二区883| 久久草av在线| 免费三级欧美电影| 日韩经典中文字幕一区| 亚洲高清视频的网址| 夜夜嗨av一区二区三区中文字幕 | 亚洲五码中文字幕| 亚洲一卡二卡三卡四卡无卡久久| 亚洲色图一区二区| 亚洲乱码国产乱码精品精可以看| 国产精品欧美精品| 国产精品久久久一本精品| 久久久九九九九| 国产精品网曝门| 最新热久久免费视频| 最新不卡av在线| 亚洲另类中文字| 亚洲国产一区视频| 午夜a成v人精品| 蜜桃av一区二区在线观看| 久久精品国产77777蜜臀| 激情综合五月婷婷| 国产a视频精品免费观看| 成人app在线观看| 在线看不卡av| 日韩一区二区三| 欧美国产精品一区| 一区二区高清免费观看影视大全| 亚洲一区二区三区四区不卡| 日韩电影在线一区| 国产毛片精品国产一区二区三区| 粉嫩蜜臀av国产精品网站| 99精品欧美一区二区蜜桃免费 | 欧美高清视频www夜色资源网|