各位前辈好,我是一个vc初学者,现有两个问题待解决:
1.我想在一个CListCtrl控件中插入CComboBox控件,就是在CListCtrl的某一行中显示一个CComboBox控件。我试过先用GetItemRect()取得CListCtrl某一行的RECT,再在这个RECT中创建(Create)CComboBox,但这个CComboBox会覆盖到CListCtrl以外的范围。请问有什么办法可以使CComboBox完全插入CListCtrl的某一行?
2.请问CMap到底是干什么用的?我的邮箱:[email protected]。谁有这方面的代码,请发给我。谢谢谢谢谢谢

解决方案 »

  1.   

    实际上是没有办法把一个ComboBox"插入"到一个ListView中.你所看得的是二个控件,只是当你选中ListView的某一项时,那个ComboBox才显示出来而已,它是盖在ListView上的.无论怎样说,你的方法倒是对的,就是取得Item的RECT.你可以先建好那个ComboBox,不用显示.当你在ListView中选定某项时,截取其RECT,然后用MoveWindow移过去.
    CMap是用装object的,和CArray等类似,不过它的检索是通过key来实现的(实际是上HASH方法),所以在已知KEY找VALUE时性能较高.
      

  2.   

    ListView中选定某项时,截取其RECT,在调整一下rect,最后用MoveWindow移过去.