CTipDlg::CTipDlg(CWnd* pParent, int table[9][9]) : CDialog(CTipDlg::IDD, pParent) , m_index(0) , m_bStep(false) { for(int i = 0;i < 9;i ++) { for(int j = 0;j < 9;j ++) { m_node[i][j].setLoc(i, j); } } for(int i = 0;i < 9;i ++) { for(int j= 0;j < 9;j ++) { if(table[i][j] == 0) { m_nodeList[8].AddNode(&m_node[i][j]); } else { m_node[i][j].setNum(table[i][j]); m_nodeList[0].AddNode(&m_node[i][j]); } } } for(CNode* pt = m_nodeList[0].GetHead();pt != NULL;pt = pt->next) { delSurround(pt->getData(), pt->getCol(), pt->getRow()); } while (ConfirmNode()); }