📄 setbreakpointdlg2.cpp
字号:
// SetBreakPointDlg2.cpp : implementation file
//
#include "stdafx.h"
#include "SetBreakPointDlg2.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSetBreakPointDlg dialog
CSetBreakPointDlg::CSetBreakPointDlg(CArray<float,float> *pnonstr_array,
int i_attrnum,
CStringArray &str_array,CZssManualScaler *pscaler,CWnd* pParent/* = NULL*/)
: CDialog(CSetBreakPointDlg::IDD, pParent),m_str_array(str_array)
{
//{{AFX_DATA_INIT(CSetBreakPointDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
m_pscaler=pscaler;
m_iattrnum=i_attrnum;
m_pnonstr_array=pnonstr_array;
}
void CSetBreakPointDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSetBreakPointDlg)
DDX_Control(pDX, IDC_MSFLEXGRID1, m_grid);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSetBreakPointDlg, CDialog)
//{{AFX_MSG_MAP(CSetBreakPointDlg)
ON_BN_CLICKED(ID_YES, OnYes)
ON_BN_CLICKED(IDC_ADDROW, OnAddrow)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSetBreakPointDlg message handlers
BOOL CSetBreakPointDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_grid.SetRows(5);
m_grid.SetCols(m_iattrnum);
m_grid.SetRow(0);
m_grid.SetColAlignment(0,1);
for (int i=0;i<m_iattrnum;i++)
{
m_grid.SetCol(i);
m_grid.SetText(m_str_array.GetAt(i));
}
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
BEGIN_EVENTSINK_MAP(CSetBreakPointDlg, CDialog)
//{{AFX_EVENTSINK_MAP(CSetBreakPointDlg)
ON_EVENT(CSetBreakPointDlg, IDC_MSFLEXGRID1, -602 /* KeyDown */, OnKeyDownMsflexgrid1, VTS_PI2 VTS_I2)
//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()
void CSetBreakPointDlg::OnKeyDownMsflexgrid1(short FAR* KeyCode, short Shift)
{
if (*KeyCode==0xD)
{
if(m_grid.GetCol()==m_grid.GetCols()-1)
{
if (m_grid.GetRow()==m_grid.GetRows()-1)
{
m_grid.SetRows(m_grid.GetRows()+1);
}
m_grid.SetRow(m_grid.GetRow()+1);
}
m_grid.SetCol((m_grid.GetCol()+1)%m_grid.GetCols());//move the next col
}
}
void CSetBreakPointDlg::OnYes()
{
long row=m_grid.GetRows(),col=m_grid.GetCols();
CString str_temp;
float f_breakpoint;
for( long i=1;i<row;i++)
{
m_grid.SetRow(i);
for(long j=0;j<col;j++)
{
m_grid.SetCol(j);
str_temp=m_grid.GetText();
if (str_temp=="")
continue;
f_breakpoint=(float)atof(str_temp);
/* if ((f_breakpoint=((float)atof(str_temp)))==0.0)
{
MessageBox("输入有错误");
return;
}
*/
m_pscaler->AddToArrayByOrder(f_breakpoint,m_pnonstr_array[j]);
}
}
CDialog::OnOK();
}
void CSetBreakPointDlg::OnOK()
{
}
void CSetBreakPointDlg::OnAddrow()
{
m_grid.SetRows(m_grid.GetRows()+1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -