ListCtrl中子项变更问题

BeenZ 2009-06-17 02:54:23
本人新手,做了个MFC程序

1.做了一个mycombobox类继承combobox,然后在mycombobox类中写了onselectchange事件
2.动态创建了一组带mycombobox的ListCtrl.

现在问题来了,在onselectchange中可以捕获到下拉列表更新的事件.但是怎么也没办法在onselectchange更新了ListCtrl以后捕获到这个更新ListCtrl子项的事件. 简单的说就是比如:我在列表1行3列的下拉框中选择了选项2.我想捕捉到更新后的东西(必须在ListCtrl中而不是在onselectchange中,因为要动态画图),试过了LVN_ITEMCHANGE 不行,
请问有什么办法捕捉这个事件?

或者在onselectchange中有办法能回传然后画图么? ondraw函数在mydlg类中,有办法能在mycombobox中获得mydlg 画图区域的窗体然后更新也行

卡3天了,请高手赐教,对问题叙述有什么疑问欢迎提出,在线等
...全文
84 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnzdgs 2009-06-17
  • 打赏
  • 举报
回复
没看明白你的主要问题是什么。如果要跟父窗口通讯,GetParent然后发送自定义消息即可,不需要将指针转换为view类型。如果要包含view.h,需要在其前面包含doc.h。
yangsh3002 2009-06-17
  • 打赏
  • 举报
回复
在mycombobox头文件的开始声明:class MyView;
BeenZ 2009-06-17
  • 打赏
  • 举报
回复
想了下,现在问题变更为:如何在mycomboBox 调用 MyView方法?
在mycomboBox类中一include "MyView.h" 就出错...
BeenZ 2009-06-17
  • 打赏
  • 举报
回复
已经加了,如下
CListCtrl* pList = static_cast<CListCtrl*>(GetParent());
int nRow = -1;
int nCol = -1;
pList->GetCellInfo(nRow, nCol);
pList->SetItemText(nRow, nCol, csText);

现在我的问题主要是在mydlg窗体中得到这个变更然后对应进行画图操作,在mycomboBox中不知道怎么得到绘图窗体
窗体所在的类是MyView 窗体ID IDD_MYFORM 画图区域 ID: IDC_WAVEFORM
yangsh3002 2009-06-17
  • 打赏
  • 举报
回复
在mycomboBox中加一个指针,创建时让它指向你想要访问的东西,如对话框、listctrl等。

7,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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