解决方案 »
- 请教毕业设计
- 请问CTreeCtrl消息响应中的OnClickTree1与OnSelchangeTree1有什么区别
- 如何朝其它程序一个有输入焦点的编辑控件输入中文字串?
- 在win32 sdk 编程中,如何知道某个api函数或结构 要用到那个头文件?
- 请教一个smtp编码问题!
- skinmagic 高手进来看看。
- socket编程初学,我把客户端和服务器用单选按钮做到一个界面后,实现了从客户端向服务器发送消息,却不知道怎么实现从服务器向客户端发消息
- MFC udp广播后,recvfrom得到的为什么一直是电脑的IP,我想得到设备的IP
- DES算法,有谁能帮助调试一下?
- 新问题,哪位高手知道quoted-printable编码?
- 如何在view中显示dialog
- mfc画图问题
2.你是在定义全局变量,这个全局变量不要定义在stdafx文件里,最好是放到应用程序类App类的头文件和CPP中,因为你定义在stdafx.cpp里,这个文件本身不会构造对象,所以LPTest不会分配存储空间的,在程序其他地方访问时会出错.
不是别的类 就是这样改的 LONG lStyle3;
lStyle3 = GetWindowLong(Dlg4.MyL3.m_hWnd, GWL_STYLE);//获取当前窗口style
lStyle3 &= ~LVS_TYPEMASK; //清除显示方式位
lStyle3 |= LVS_REPORT; //设置style
SetWindowLong(Dlg4.MyL3.m_hWnd, GWL_STYLE, lStyle3);//设置style
DWORD dwStyle3 = Dlg4.MyL3.GetExtendedStyle();
dwStyle3 |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
dwStyle3 |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
dwStyle3 |= LVS_EX_CHECKBOXES; //复选框
// dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件
Dlg4.MyL3.SetExtendedStyle(dwStyle3); //设置扩展风格
更新后,你也要再对每一行需要设置check的重新设置一下
void CDlg04::OnLvnItemchangingList1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
Checked = MyL3.GetCheck(pNMLV->iItem);
*pResult = 0;
}void CDlg04::OnHdnItemchangedList1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMHEADER phdr = reinterpret_cast<LPNMHEADER>(pNMHDR);
if(Checked)
MyL3.SetCheck(phdr->iItem);
*pResult = 0;
}
这样写 也不行
----内容被更新后,如果复选框的选择还有效,哪才是有问题呢!
----因为复选框的选择,是对以前的内容的选择,内容被更新后,要重新选择。
----List Control 的Style 加 LVS_EX_CHECKBOXES,只是表示List Control有复选框这个栏目。
如果楼主想实现这个功能,在内容被更新前,保存全部的GetCheck值,内容被更新后,再重新SetCheck