读书人

关于TAB控件的sendmessage操作(有关问

发布时间: 2012-01-20 18:53:53 作者: rapoo

关于TAB控件的sendmessage操作(问题可能较偏较难)
我公司以前有个专门软件是用统计生产数据的,现在没有源代码了,我也不知道是用什么工具开发的,重新开发已不可能.现在想要增加功能,思路方法是:用VB操作原统计软件的菜单和对话框小窗口,得到数据后再对数据处理.
在网络的帮助下,操作菜单的代码已经实现了,处理数据的代码也实现了,对话框的小窗口句柄和操作也实现了,sendmessage 鼠标单击 "确认按钮 "也实现了,现在遇上个难题:
有一个选择控件(三个选择按钮, "存放在A区 ", "存放在B区 ", "存放在C区 "),功能和VB中的option控件(style=graphical,按钮样式)差不多,或像toolbar控件中的三个按钮(样式style是tbrbuttongroup).也就是说三个选择按钮是单选按钮组.
我用spy++和其它工具只检查到它的类是 "SysTabControl32 ",标题是 "Tab1 ",样式是 "54008140 ".
我用根据标题是 "Tab1 "找到了它的句柄hwnd,但不能根据 "存放在B区 "的字符串找到它的句柄?
我想用代码控制自动选择第二项的 "存放在B区 ",由于在直接操作中是用鼠标点击选择按钮实现选择的,所以我用 SendMessage/postmessage hwnd, BM_CLICK, 0, 0,但并不能实现任何按钮的选择,窗口无任何反应.
我开始也觉得不行,因为得到的句柄是根据 "Tab1 "字符串取得的,但这个句柄并不代表 "存放在B区 "这个按钮,谁有办法取得 "存放在B区 "这个按钮吗?

[解决办法]
//我查了一点资料,发现VB中的toolbar控件也是这样,bar有句柄,bar中的button没有句柄,也找到了一些代码,但不能完全看懂,谁能帮我一下?

这和你的问题完全是两回事,toolbar中的button和toolbar是有关联的,而你的按钮是自己画上去的

读书人网 >VB

热点推荐