关于模式对话框的一个简单问题

boyofbit 2007-09-09 01:16:17
主对话框是CBSDlg,建立的模式对话框叫做CMainDlg

CMainDlg上面有一个ListCtrl.
主对话框怎么去操作这个ListCtrl?
...全文
90 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
linsi 2007-09-09
  • 打赏
  • 举报
回复
恭喜~ 你都会找Bug了,:)
boyofbit 2007-09-09
  • 打赏
  • 举报
回复
不过你有个地方写错了
(CListCtrl *)pMainDlg->GetDlgItem(IDC_LIST_FRIENDS);

-->
(CListCtrl *)m_pMainDlg->GetDlgItem(IDC_LIST_FRIENDS);
boyofbit 2007-09-09
  • 打赏
  • 举报
回复
非常感激!
boyofbit 2007-09-09
  • 打赏
  • 举报
回复
会了,给分,哈哈,这是我第一次在CSDN提问!
linsi 2007-09-09
  • 打赏
  • 举报
回复
1.加入 CMainDlg 头文件到主界面类里; #include "maindlg.h"

2.添加成员变量 CMainDlg *m_pMainDlg;

3.在 OnInitDialog里添加:

m_pMainDlg = new CMainDlg;
m_pMainDlg->Create(IDD_MAIN_DIALOG, this);
m_pMainDlg->ShowWindow(SW_HIDE);

4.在要使用的地方:

m_pMainDlg->ShowWindow(SW_SHOW);
CListCtrl *pList = (CListCtrl *)pMainDlg->GetDlgItem(IDC_LIST_FRIENDS);
//.....

再要不会我没招了。呵呵~

boyofbit 2007-09-09
  • 打赏
  • 举报
回复
不行啊,运行到
CMainDlg *pMainDlg = new CMainDlg;

CListCtrl *pList = (CListCtrl *)pMainDlg->GetDlgItem(IDC_LIST_FRIENDS);
就报错了.
linsi 2007-09-09
  • 打赏
  • 举报
回复
直接调用模式Dialog的成员变量就可以:
CMainDlg *pMainDlg = new CMainDlg;
...

CListCtrl *pList = (CListCtrl *)pMainDlg->GetDlgItem(IDC_LIST1);

这个 pList 就是该 CListCtrl 控件的指针。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧