UCGUI LISTBOX里调用_CallOwnerDraw时出现的问题.

UCGUI LISTBOX里调用_CallOwnerDraw时出现的问题

UCGUI 3.94

虽然很少出现,操作中也没有出现这样的情况,但我跑几个线程,测试程序时。

偶尔程序运行,调用_CallOwnerDraw过程时,如果调用pObj->pfDrawItem会出现非法指令的错误,查看代码,似乎一直都没有设置这个指针,怎么会调用到呢?

查看产生的core文件,pObj->pfDrawItem这个已经不是NULL了,搜索了所有用到这个指针的地方,除了调用设它他的方法外,没有地方变更过它的值呀!

调用的代码如下的:当调用的到 pObj->pfDrawItem 就出错了

static int _CallOwnerDraw(LISTBOX_Handle hObj, const LISTBOX_Obj* pObj, int Cmd, int ItemIndex) {
  WIDGET_ITEM_DRAW_INFO ItemInfo;
  int r;
  ItemInfo.Cmd       = Cmd;
  ItemInfo.hWin      = hObj;
  ItemInfo.ItemIndex = ItemIndex;
  if (pObj->pfDrawItem) {
    r = pObj->pfDrawItem(&ItemInfo);
  } else {
    r = LISTBOX_OwnerDraw(&ItemInfo);
  }
  return r;
}


估计还是UCGUI的堆管理的地方出现的问题!! 如果使用其的dropbox和lixtbox可能会出现

记录一下,是否有其它的同志,也见着过?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值