Cod*_*345 2 delphi c++builder virtualtreeview
我在Windows 7上遇到了VirtualTreeView组件的问题.我添加了一个TVirtualStringTree并使用OnGetImageIndex事件来分配ImageIndex,它始终处于调试器非零值.
VirtualStringTree使用带有16x16图标的TImageList作为Images属性.
在Windows XP上它可以正常工作,在Windows 7上,它在正常图标的顶部与TImageList的索引为0的图标重叠.我在Windows 7上运行与在XP上相同的程序,因此代码是相同的,但绘图是不同的.
此图片说明了问题:
virtualtreeview问题http://i42.tinypic.com/6sb8ko.jpg
灰色三角形图标的索引为0,文件夹图标的索引为5.
这是VirtualStringTree中的错误吗?我可以以某种方式避免这个吗?
我正在使用存储库中的最新VirtualTreeView版本.
在OnGetImageIndex事件处理程序中,请注意Kind: TVTImageKind参数.ImageIndex根据需要进行分配(通常,这仅用于ikNormal和ikSelected值),否则分配-1.
例如,在Kind具有值的情况下指定有效图像索引ikOverlay将导致在正常图像上绘制叠加图像.(这可能与您的问题有关.)