📄 renderpiedlg.cpp
字号:
// RenderPieDlg.cpp : implementation file
//
#include "stdafx.h"
#include "mapper.h"
#include "RenderPieDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CRenderPieDlg dialog
CRenderPieDlg::CRenderPieDlg(CWnd* pParent /*=NULL*/)
: CDialog(CRenderPieDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CRenderPieDlg)
m_sField = _T("");
m_sSizeField = _T("");
m_iMin = 10;
m_iMax = 20;
//}}AFX_DATA_INIT
}
void CRenderPieDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CRenderPieDlg)
DDX_Control(pDX, IDC_SIZE_FIELD, m_oSizeField);
DDX_Control(pDX, IDC_COLOR, m_oColor);
DDX_Control(pDX, IDC_FIELD, m_oField);
DDX_Control(pDX, IDC_FIELD_LIST, m_oFieldList);
DDX_CBString(pDX, IDC_FIELD, m_sField);
DDX_CBString(pDX, IDC_SIZE_FIELD, m_sSizeField);
DDX_Text(pDX, IDC_MIN, m_iMin);
DDX_Text(pDX, IDC_MAX, m_iMax);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CRenderPieDlg, CDialog)
//{{AFX_MSG_MAP(CRenderPieDlg)
ON_BN_CLICKED(IDC_ADD, OnAdd)
ON_BN_CLICKED(IDC_DELETE, OnDelete)
ON_BN_CLICKED(IDC_QUIT, OnQuit)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CRenderPieDlg message handlers
BOOL CRenderPieDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CString s;
int i,count=m_taLayerField.GetSize();
for(i=0;i<count;i++)
{
m_oField.AddString(m_taLayerField[i].szField);
m_oSizeField.AddString(m_taLayerField[i].szField);
}
m_oField.SetCurSel(0);
m_oSizeField.SetCurSel(0);
m_oColor.SetColor(RGB(255,0,0));
m_oFieldList.InsertColumn(0,"颜色");
m_oFieldList.InsertColumn(1,"字段");
m_oFieldList.SetColumnWidth(0,60);
m_oFieldList.SetColumnWidth(1,200);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CRenderPieDlg::OnAdd()
{
UpdateData();
//检查字段类型
//检查重复
for(int i=0;i<m_oFieldList.GetItemCount();i++)
{
if(m_oFieldList.GetItemText(i,1)==m_sField)
{
AfxMessageBox("当前字段已经设置!");
return;
}
}
long index=-1;
m_oFieldList.InsertItemEx(index,m_oColor.GetColor());
m_oFieldList.SetItemText(index,1,m_sField);
UpdateData(FALSE);
}
void CRenderPieDlg::OnDelete()
{
// int n=m_oFieldList.GetNextItem(-1,LVNI_SELECTED);
// if(n>0)
// {
// m_oFieldList.DeleteItem(n);
// }
m_oFieldList.DeleteAllItems();
}
void CRenderPieDlg::OnQuit()
{
//不能为空
if(m_oFieldList.GetItemCount()<=0)
{
AfxMessageBox("至少设置一个字段!");
return;
}
PieDataInfo pdi;
for(int i=0;i<m_oFieldList.GetItemCount();i++)
{
pdi.field=m_oFieldList.GetItemText(i,1);
pdi.color=m_oFieldList.GetItemData(i);
m_taPie.Add(pdi);
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -