如何获取带LVS_OWNERDATA样式的ListView里的数据

ysai 2009-09-02 10:25:07
http://topic.csdn.net/u/20090901/10/27bb69f5-a9b7-4dd2-b91a-2d523d56534a.html

有个程序是C++写的,类名:SysListView32,样式带有以下样式
LVS_OWNERDATA
LVS_OWNERDRAWFIXED

用以下代码能取到Delphi自带例子"Virtual Listview"中的数据(转自刘麻子在DFW的回贴)
function ListView_GetItemText_Mz(hListView: HWnd; iItem, iSubItem: Integer; pszText: PChar; cchTextMax: Integer): Integer;
var
DispInfo: TLVDispInfo;
begin
DispInfo.hdr.hwndFrom := hListView;
DispInfo.hdr.idFrom := GetDlgCtrlID(hListView);
DispInfo.hdr.code := LVN_GETDISPINFO;

ZeroMemory(@DispInfo.item, SizeOf(DispInfo.item));
DispInfo.item.mask := LVIF_TEXT;
DispInfo.item.iItem := iItem;
DispInfo.item.iSubItem := iSubItem;
DispInfo.item.pszText := pszText;
DispInfo.item.cchTextMax := cchTextMax;

Result := SendMessage(GetParent(hListView), WM_NOTIFY, GetDlgCtrlID(hListView), Integer(@DispInfo));
end;


但取不到C++写的这个程序中ListView的内容,想请教下这种内容如何取

Delphi版没人回答,C++代码能实现也可以,我会把它翻译成DELPHI
...全文
269 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
liutian2 2010-04-05
  • 打赏
  • 举报
回复
upupupupupupupupupupupupupupupupupup
ysai 2009-09-11
  • 打赏
  • 举报
回复
up
ysai 2009-09-08
  • 打赏
  • 举报
回复
up
ysai 2009-09-06
  • 打赏
  • 举报
回复
up
ysai 2009-09-05
  • 打赏
  • 举报
回复
whg01 2009-09-05
  • 打赏
  • 举报
回复
你要提取哪个程序?
另外,用snagit试一下,如果用snagit不能获取文本,那么你只能写屏幕取词。
lzh9955 2009-09-03
  • 打赏
  • 举报
回复
顶一下!
ysai 2009-09-03
  • 打赏
  • 举报
回复
ListView_GetItem,ListView_GetItemText是不行的
至于发送LVN_GETDISPINFO消息,我上面贴的代码就是,不过它能取Delphi的虚拟列表数据,但C++的取不到
想知道C++的怎么取,有兴趣的可以试试,我就是试不出
thy38 2009-09-03
  • 打赏
  • 举报
回复
帮顶
wu_qing_yun 2009-09-02
  • 打赏
  • 举报
回复
ownerDraw的确是有点麻烦,不能按一般的方法获取。

只能用钩子了。
aa3000 2009-09-02
  • 打赏
  • 举报
回复
发送消息 LVN_GETDISPINFO 就可以获取数据了。
aa3000 2009-09-02
  • 打赏
  • 举报
回复
发送消息 LVN_GETDISPINFO 就可以获取数据了。
dirdirdir3 2009-09-02
  • 打赏
  • 举报
回复
ownerdraw的可能需要使用钩子函数来对textout进行处理,最终都是用textout输出字符的.....除非是图片的就没办法了..........
whg01 2009-09-02
  • 打赏
  • 举报
回复
为了保护自己,有些程序屏蔽了此项功能,比如词典。你可以试试单击list后,拷贝粘贴是否有效。另外,双击list后,通常把内容填写到文本框中,或者更新某些内容。试试那些能不能拷贝。
实在不行,就写个屏幕取词的程序。

64,652

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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