对话框中的LISTCTRL不能显示CHECKBOX

来源:互联网 发布:my sql条件触发器 编辑:程序博客网 时间:2024/06/02 05:33
我做了一个基于对话框的程序,两个窗口。当点击一个对话框的一个按钮时第二个对话框才显示出来。
现在的问题时,在第二个对话框里的LISTCTRL不能显示CHECKBOX。
我在主对话框的初始化里已经设置过了,但是还是不能显示。
void CVehInfo::InitList(void)
{

//空白的,为了拉开行距
CImageList   m_l;   
m_l.Create(1,20,TRUE|ILC_COLOR32,1,0);   
m_List.SetImageList(&m_l,LVSIL_SMALL);

//=======================================

#define LVS_EX_DOUBLEBUFFER 0x00010000
// 画出网格线
DWORD dwStyle = m_List.GetExtendedStyle(); 
dwStyle|= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl) 
dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl) 
dwStyle |= LVS_EX_DOUBLEBUFFER;
dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件 
        m_List.SetExtendedStyle(dwStyle); //设置扩展风格
/* m_ctlListDS.set(RGB(228,236,243)); */
m_List.SetTextBkColor(RGB(228,236,243));
/* m_ctlListDS.SetTextColor()*/

//设置两列的宽度
RECT rect;
m_List.GetClientRect(&rect);
int w = rect.right-rect.left;
//宽度 6:4
m_List.InsertColumn(0,"数据名称",LVCFMT_CENTER,(int) (w*0.5));//LVCFMT_CENTER LVCFMT_LEFT
m_List.InsertColumn(1,"数值",LVCFMT_CENTER,(int)(w*0.3));
m_List.InsertColumn(2,"单位",LVCFMT_CENTER,(int)(w*0.2-18));

}

BOOL CTestThreadDlg::OnInitDialog()
{
         ........................
         ........................
// TODO: Add extra initialization here

//获取屏幕大小

vehinfo.Create(IDD_DIALOG1,this);
vehinfo.InitList();
}

现在的第二个对话框属性为POPUP。
请问谁知道是怎么回事?

0 0
原创粉丝点击