MFC FlexGrid控件的使用示例

个人博客地址 www.tmbcode.com

MFC FlexGrid控件的使用

一、创建一个FlexGrid

        

 

二、为FlexGrid绑定一个变量

 

        

 

三、编写代码设置属性

 

         //这个函数是设置每个列的宽度,这里一个六列。

void CPACKView::SetRowCol(int rows,int cols)

{

         m_flex.SetRows(rows);

         m_flex.SetCols(cols);

        

         m_flex.SetColWidth(0,320);//0代表第0列 320代表宽度为320像素

         m_flex.SetColWidth(1,2100);

         m_flex.SetColWidth(2,2100);

         m_flex.SetColWidth(3,1750);

         m_flex.SetColWidth(4,1750);

         m_flex.SetColWidth(5,1750);

 

         //reset current rowand col

         this->m_cur_row=1;   // m_cur_row 和m_cur_col是int型,表示当前坐标

         this->m_cur_col=1;

}

 

//设置数据居中和每一列的名字

void CPACKView::SetNumText(int rows)

{

         //设置FLEX居中

         for(introw=0;row<rows;row++)

         {

                   m_flex.SetRow(row);

                   m_flex.SetCol(1);

                   m_flex.SetCellAlignment(4);

                  

                   m_flex.SetRow(row);

                   m_flex.SetCol(2);

                   m_flex.SetCellAlignment(4);

                  

                   m_flex.SetRow(row);

                   m_flex.SetCol(3);

                   m_flex.SetCellAlignment(4);

 

                   m_flex.SetRow(row);

                   m_flex.SetCol(4);

                   m_flex.SetCellAlignment(4);

 

                   m_flex.SetRow(row);

                   m_flex.SetCol(5);

                   m_flex.SetCellAlignment(4);

         }

        

         //设置序列号

         CString strT;

         for(intcount=1;count<rows;count++) //设置第0列为序号,自动递增

         {

                   strT.Format("%d",count);

                   m_flex.SetTextMatrix(count,0,strT);

         }

        

         m_flex.SetTextMatrix(0,1,"姓名");

         m_flex.SetTextMatrix(0,2,"学号");

         m_flex.SetTextMatrix(0,3,"班级");

         m_flex.SetTextMatrix(0,4,"性别");

         m_flex.SetTextMatrix(0,5,"联系方式");

}

 

四、添加数据

 

         //m_Name、m_Num、m_Class、m_Sex、m_Phone都是CStringArray类型

//设置FLEX格数

         this->SetRowCol(m_Name.GetSize()+1,6);//添加数据前先调用上面两个函数初始化一下

         this->SetNumText(m_Name.GetSize()+1);

 

         for(int i=0;i<m_Name.GetSize();i++)

         {

                   m_flex.SetTextMatrix(i+1,1,m_Name.GetAt(i));

 

                  m_flex.SetTextMatrix(i+1,2,m_Num.GetAt(i));

 

                  m_flex.SetTextMatrix(i+1,3,m_Class.GetAt(i));

 

                   m_flex.SetTextMatrix(i+1,4,m_Sex.GetAt(i));

                  

                   m_flex.SetTextMatrix(i+1,5,m_Phone.GetAt(i));

         }

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明亮Lucky

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值