void CExercise2Dlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
//获得两个下拉菜单当前选择的数据值
int index,column;
index=((CComboBox*)GetDlgItem(IDC_COM_One))->GetCurSel();
column=((CComboBox*)GetDlgItem(IDC_COM_Two))->GetCurSel();
//列表清空
m_list.DeleteAllItems(); // 列表全部清空
GetDlgItem(IDC_PICTURE1)->ShowWindow(FALSE);
GetDlgItem(IDC_PICTURE1)->ShowWindow(TRUE);
//生成动态二维数组
int **data;
data=new int *[index+2];
for(int i=0; i<index+2; i++)
{
data[i]=new int[index+2];
}
//初始化二维数组
for(int i=0; i<index+2; i++)
{
for(int j=0; j<index+2; j++)
{
data[i][j]=1;
}
}
//列表显示随机数
for (int m = 0; m < index+1; m++)
{
CString strItem = _T("");
strItem.Format("%d", m);
m_list.InsertItem(m, strItem);
int n;
// 设置列表中项的文本和数据
for (n = 1; n < column+2; n++)
{
int num = rand()%10-rand()%10;
data[m][n]=num; // 数组中保存随机数
CString strText = _T("");
strText.Format(_T(" %d "), num); //类型转化
m_list.SetItemText(m, n, strText);
m_list.SetItemData(m, m);
}
}
//建立笔刷画线
CDC *pDC;
pDC = m_picShow.GetDC();
CPen Pen1(PS_SOLID,2,RGB(32,178,170));
CPen Pen2(PS_SOLID,2,RGB(139,115,85));
CPen Pen3(PS_SOLID,2,RGB(135,206,255));
CPen Pen4(PS_SOLID,2,RGB(240,128,128));
CPen Pen5(PS_SOLID,2,RGB(112,128,144));
CPen *oldPenx = pDC->SelectObject(&Pen1);
for(int n=1;n < column+2;n++)
{
int j;
int x=30;
if(n==2)
oldPenx = pDC->SelectObject(&Pen2);
else if(n==3)
oldPenx = pDC->SelectObject(&Pen3);
else if(n==4)
oldPenx = pDC->SelectObject(&Pen4);
else if(n==5)
oldPenx = pDC->SelectObject(&Pen5);
pDC->MoveTo(30,110-12*data[0][n]);
for(j = 1;j < index+1; j++)
{
if(index<10)
x+=55;
else if(index<21)
x+=29;
else if(index<30)
x+=20;
else if(index<41)
x+=14;
else if(index<61)
x+=9;
else if(index<81)
x+=7;
else
x+=5;
pDC->LineTo(x,110-12*data[j][n]);
//x+=30;
//pDC->SelectObject(oldPenx);
}
}
for(int i=0; i<index; i++)
{
delete[] data[i];
}
delete[] data;
}
8.31_OnBnClickedButton1()最终代码
猜你喜欢
转载自blog.csdn.net/weixin_38593332/article/details/82259167
今日推荐
周排行