⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bylist.cpp

📁 匈牙利法解决分派问题
💻 CPP
字号:
// bylist.cpp : implementation file
//

#include "stdafx.h"
#include "匈牙利法解分派问题.h"
#include "bylist.h"
#include "datachange.h"
#include <fstream.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern int N;
extern int select_num;
LV_COLUMN lvColumn1;
extern float** c;
extern char filename[50];
extern char **change_data;
extern bool changed;
/////////////////////////////////////////////////////////////////////////////
// bylist dialog


bylist::bylist(CWnd* pParent /*=NULL*/)
	: CDialog(bylist::IDD, pParent)
{
	//{{AFX_DATA_INIT(bylist)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT

}


void bylist::DoDataExchange(CDataExchange* pDX)
{

	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(bylist)
	DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
	//}}AFX_DATA_MAP
	lvColumn1.mask=LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;
	lvColumn1.fmt=LVCFMT_LEFT;
	lvColumn1.cx=100;
	char title[20];
		strcpy(title,"任务");
		char num[4];
		itoa(select_num+1,num,10);
		strcat(title,num);
	lvColumn1.iSubItem=0;
	lvColumn1.pszText=title;
	m_ListCtrl.InsertColumn(0,&lvColumn1);
	m_ListCtrl.SetColumnWidth(0,133);
	for(int j=0;j<N; j++) 
						{
						      char num[10];
							  double data=c[select_num][j];
						      gcvt(data,5,num);
							  m_ListCtrl.InsertItem(j,num);
						}
}


BEGIN_MESSAGE_MAP(bylist, CDialog)
	//{{AFX_MSG_MAP(bylist)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// bylist message handlers

void bylist::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	float lastnum;
	// TODO: Add your control notification handler code here
	for(int i=0;i<m_ListCtrl.GetItemCount();i++){
		if(m_ListCtrl.GetItemState(i,LVIS_SELECTED)==LVIS_SELECTED)
		{
	datachange dlg;
	char num[10];
	itoa(i+1,num,10);
		dlg.m_static+="数据";
	dlg.m_static+=num;
	lastnum=dlg.m_data=c[select_num][i];
	if(dlg.DoModal()==IDOK){
        if(lastnum!=dlg.m_data){
			changed=true;
			c[select_num][i]=dlg.m_data;
			ofstream ofile(filename);
			ofile<<N<<endl;
			for(int j=0;j<N;j++){
				for(int k=0;k<N;k++)
					ofile<<c[j][k]<<" ";
				ofile<<endl;
		}
		ofile.close();
		char data[10];
		gcvt(c[select_num][i],5,data);
//	m_ListCtrl.InsertItem(i,data);
	m_ListCtrl.SetItemText(i,0,data);
     for(j=0;j<N;j++)
						strcpy(change_data[j],m_ListCtrl.GetItemText(j,0));
		}
	}

		}
	}
	*pResult = 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -