动态创建一个CListCtrl [英] Create A CListCtrl Dynamically

查看:70
本文介绍了动态创建一个CListCtrl的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我的问题很明显,我想动态创建一个CListCtrl到FormView中.

我尝试了此代码,如下所示:

Hi all,

My issue is clear, I wanna to create a CListCtrl into a FormView Dynamically.

i tried this code like below :

CListCtrl* TmpCobA;
TmpCobA->Create(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT,
    CRect(10,10,400,200), NULL, 1);




但是在调试时说

运行时检查失败#3-变量"TmpCobA"未定义使用.




but when debugging it said

Run-Time Check Failure #3 - The variable ''TmpCobA'' is being used without being defined.

推荐答案

您声明了一个指针到列表控件,而不分配现有列表控件的地址.解决方案是分配内存:
You declared a pointer to the list control without assigning the address of an existing list control. The solution is to allocate memory:
CListCtrl* TmpCobA = new CListCtrl;
TmpCobA->Create(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT,
    CRect(10,10,400,200), NULL, 1);


或使用局部变量:


or use a local variable:

CListCtrl TmpCobA;
TmpCobA.Create(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT,
    CRect(10,10,400,200), NULL, 1);


它像这样工作:

It Worked Like That :

// TODO: Add extra initialization here
    CListCtrl* TmpCobA = new CListCtrl;

    TmpCobA ->Create(WS_CHILD | WS_VISIBLE,
    CRect(10, 10, 320, 280), this, 0x285);



主要工作是我想创建一个自定义控件( CMultilineList )

但它崩溃了



The Main Work is that i wanna create a custom control (the CMultilineList)

But It crashes

CMultilineList *lstCtrl = new CMultilineList;
lstCtrl->Create(this, CRect(10, 10, 320, 280), 0x285, WS_CHILD | WS_VISIBLE);



指向声明声明(如下)



pointing to the Assert Statement (below)

_AFXWIN_INLINE int CFont::GetLogFont(LOGFONT* pLogFont)
    { ASSERT(m_hObject != NULL);
        return ::GetObject(m_hObject, sizeof(LOGFONT), pLogFont); }


这篇关于动态创建一个CListCtrl的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆