MFC基于对话框的,添加了很多复选框(每个复选框代表一个三维向量).
目的,可以选取多个复选框,最终将选中的复选框代表的三维向量添加到数组中,组成一个大的A[i][3]的数组,i 即为选中的复选框个数。(用CArray实现)
问题:1.在每个复选框的响应函数中,除了写入他要代表的三维向量,如a[3]={ ..};b[3]={...};c[3]={..},
        是否也要写入选中次数加一呢,要写实现是在上次的基础上加一的呢?求响应函数的代码
      2。 如何将3维向量都填入数组中呢,用add好像不行,求代码

解决方案 »

  1.   

    不如:
    typedef 3DPt_stru
    {
      int x;
      int y;
      int z;
    }3DPt;list<3DPt> 3D_list;3D_list.pushback
      

  2.   

    typedef struct _CELL
    {
      int x, y, z;
      BOOL bSelect;
      int nCount;
      ……
    }CELL;CArray <CELL, const CELL &> mCellArray;CELL c1 ={1,2,3,……};
    mCellArray.Add(c1);CELL c2 = mCellArray[0];
      

  3.   

    只想把三维坐标加进数组,这样add(c1)就把状态什么的都加进去了。
      

  4.   

    最后一句是神马意思,是要把cell 1...n的内容都加到mcellarray中呀,为什么还有最后一句的赋值?
    为什么按下多个复选框后mcellarray的值是第一个复选框的值没有添加后面的呢?
    是要将每次mcellarray得到的值在赋出去吗?
      

  5.   

    还有,mcellarray最终应该是个备选框个数*3的矩阵,若定义是定义成mcellarray[][3],每次用mcellarray[i][3].add(c1)会报错,这个动态数组该怎么做呢