实现目标:当选定ListView项目时,在相应的选择条上会出现一个"?"图片(我用一个Panel放在Lv的上方,点击时候可见).功能可以实现,只要改变选定项目,Panel的位置改变了之后,ListView的垂直滚动条就消失了,非要点击原本滚动位置上的空白才能显示出来,(滚动条上/下方的箭头也是如此...)求一解法...另外滚动条滚动后"?"图片的位置怎么计算?...我的方法是先ListView2.Selected.Index,之后计算Panel位置再显示,可是它对于没有滚动条的情况下有效果,一但使用滚动条,项目的位置变化了...Panel的位置和选择条是错开的..怎么解决?

解决方案 »

  1.   

    自己画吧!procedure TForm1.ListView1AdvancedCustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; Stage: TCustomDrawStage;
      var DefaultDraw: Boolean);
    begin
      //在此画图
    end;
      

  2.   

    对于第一个问题我要补充的是:现在的问题是Panel一移动,ListView的滚动条就消失,只有点击滚动条的位置才能显示,但是这时滚动条上方和下方的按钮也看不见,也还需要各自点一下才出现,我用过ListView1AdvancedCustomDrawItem和ListView2CustomDraw,分别使用过Repaint,Refresh,ShowScrollBar,SetScrollRange...也许是才疏学浅,还是没有什么用处...(SetScrollRange倒是能显示滚动条,可是其长度不好掌握,并且向上/下的按钮仍不可见...)希望有高人指点一,二...
      

  3.   

    问题1已解决..不用重绘Lv...还是谢谢...hmzgz81