GetSubItemRect(-1,0 LVIR_BOUNDS, crect);参数已经为-1居然rect有正常的值

WANGHUIJUNSHIWO 2011-01-19 04:53:05
如题 , 忘有人指教!!


thanks very much.
...全文
3618 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
WANGHUIJUNSHIWO 2011-01-19
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wanghuijunshiwo 的回复:]

引用 7 楼 luciferstar 的回复:

这样可以取列名?学习了!
那-2呢?


-1 的时候可以取到rect的位置
但是当传入一个参数,参数=-1的时候就取不到。 费解。。。。。
[/Quote]

误导大家了,区别不在于 是-1 还是 值为-1的参数 ,而在于操作上:如果listctrl焦点改变了,初始打开页面时候-1就能取得正确的rect,点击没有数据的行后再来用-1取rect的值就会是不正确的负数。ps:但返回值都是TRUE。
WANGHUIJUNSHIWO 2011-01-19
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 luciferstar 的回复:]

这样可以取列名?学习了!
那-2呢?
[/Quote]

-1 的时候可以取到rect的位置
但是当传入一个参数,参数=-1的时候就取不到。 费解。。。。。
LuciferStar 2011-01-19
  • 打赏
  • 举报
回复
这样可以取列名?学习了!
那-2呢?
WANGHUIJUNSHIWO 2011-01-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 happyparrot 的回复:]

那么具体的值是什么样的呢?
[/Quote]

我调试的结果是
GetSubItemRect(-1,0 LVIR_BOUNDS, crect) 的rect: 5,18,80,370
GetSubItemRect(0,0 LVIR_BOUNDS, crect) 的rect : 18,31,80,370

其中0是数据的第一行,-1就是数据上面显示列名的行了,按道理是不应该有正确的rent值啊
WANGHUIJUNSHIWO 2011-01-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 joyzml 的回复:]

难道GetSubItemRect函数内部做了处理
[/Quote]

没有啊,直接调用的啊。
是不是clistctrl 中插入数据的时候什么错误导致的呢?
快乐鹦鹉 2011-01-19
  • 打赏
  • 举报
回复
那么具体的值是什么样的呢?
GARY 2011-01-19
  • 打赏
  • 举报
回复
难道GetSubItemRect函数内部做了处理
WANGHUIJUNSHIWO 2011-01-19
  • 打赏
  • 举报
回复
自己顶下 。

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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