📄 bylist.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 + -