关于用clistbox显示数据库中地内容

cranberry1983 2005-05-13 10:41:41
void Ck::OnSelchangeList1()
{ long nIndex,i;
if(!m_klSet.IsOpen())
m_klSet.Open();
nIndex=0;
while(!m_klSet.IsEOF())
{
pictureimfo->picturename=m_klSet.m_picturename;
pictureimfo->picturecontent=m_klSet.m_content;
m_list.SetItemDataPtr(nIndex,new Pictureimfo(*pictureimfo));
nIndex++;
}

i=m_list.GetCurSel();
m_list.GetItemDataPtr(i);
m_picturename=pictureimfo->picturename;
m_picturecontent=pictureimfo->picturecontent;
UpdateData(true);

}

pictureimfo是结构体 ,m_klSet是一个数据集

目的就是实现其目的就是当在列表框点击一项的时候,就能在其他编辑框中显示与这条字段相关地信息,
例如:可以使用SetItemDataPtr()或SetItemData()将一个32位的指针(或一个DWORD的值)同列表框中的一个条目联系起来,并且在设置后可以通过调用GetItemDataPtr()或GetItemData()而获取。这样做的目的是可以将列表框中的条目同外部数据建立联系。例如:可以用这种方式非常方便地将一个包含有地址、电话号码和E-mail地址等信息的数据结构同列举在列表框中的持有人建立起关联。当从列表框中选中某个人时,可以同时得到有关该人的通讯信息。
可每次我运行时,都会出现
ACCESS voliation这样地错误?
还请大虾帮帮忙~!

...全文
172 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
auly403 2005-05-14
  • 打赏
  • 举报
回复
加个 F9找到那个一句引起无效的句柄访问.
让大家给你猜正确的答案不好玩.
hua_yang 2005-05-14
  • 打赏
  • 举报
回复
while(!m_klSet.IsEOF())
{
pictureimfo->picturename=m_klSet.m_picturename;
pictureimfo->picturecontent=m_klSet.m_content;
m_list.SetItemDataPtr(nIndex,new Pictureimfo(*pictureimfo));
nIndex++;
}
我觉得是不是应该,在向listbox中添加条目的时候就把,这些额外的数据跟每一条目联系起来
而不是在这里

cranberry1983 2005-05-14
  • 打赏
  • 举报
回复
刚才试了一下,还是不行
具体调试时出现的错误是:Unhandled exception in yang.exe(MFC42d:DLL):oxc000005::Access violation.
并把错误指明在下面这个位置,不知道是什么错误?请大家帮忙解答一下。


const CString& CString::operator=(const CString& stringSrc)
{
if (m_pchData != stringSrc.m_pchData)
{
if ((GetData()->nRefs < 0 && GetData() != _afxDataNil) ||
stringSrc.GetData()->nRefs < 0)
{
cranberry1983 2005-05-14
  • 打赏
  • 举报
回复
while(!m_klSet.IsEOF())
{
pictureimfo->picturename=m_klSet.m_picturename;
pictureimfo->picturecontent=m_klSet.m_content;
m_list.SetItemDataPtr(nIndex,new Pictureimfo(*pictureimfo));
nIndex++;
}

请问这段代码中所运用地SetItemDataPtr是可以这样运用地嘛?
xyw2278 2005-05-14
  • 打赏
  • 举报
回复
把相关源代码贴出来
xyw2278 2005-05-14
  • 打赏
  • 举报
回复
同意楼上
cranberry1983 2005-05-14
  • 打赏
  • 举报
回复
就是不知道该怎么初始化!请方便的话,把代码写一下吧
cranberry1983 2005-05-14
  • 打赏
  • 举报
回复
是不是定以后就不用初始化了?
oyljerry 2005-05-14
  • 打赏
  • 举报
回复
定义了以后就可以初始化了
KOBEBRYANT8 2005-05-14
  • 打赏
  • 举报
回复
i=m_list.GetCurSel();
//可能这个问题
if(i==-1)
return;


UpdateData(true);
cranberry1983 2005-05-14
  • 打赏
  • 举报
回复
因为发现程序没有进行初始化,接着上面地问题请问:
struct PictureImfo
{
CString picturename;
CString picturecontent;
};
struct PictureImfo *pictureimfo;
那么如何给这个pictureimfo进行初始化呢?
小女不才,请大家help

16,551

社区成员

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

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

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