不想改写VCL,也不想新继承一个对象...

解决方案 »

  1.   

    那就直接在Form中替换TListView的窗口过程
      

  2.   

    LVM_SETCOLUMNWIDTH消息好象不会发到delphi单元中。
      

  3.   

    我其实想截获ListView Comlun改变宽度的消息,有人知道该怎么作吗?
      

  4.   

    1、定义变量和函数  TWndMethod OldLVWndProc;
      
      void __fastcall NewLVWndProc(TMessage& Message);2、在窗口构造函数中执行以下语句  OldLVProc=LV1->WindowProc;
      LV1->WindowProc=NewLVWndProc;
       
    3、编写实际的代码:void __fastcall TForm1::NewLVWndProc(TMessage& Message);
    {
      if(Message.Msg == LVM_SETCOLUMNWIDTH)
      {
        //改变列宽度
      }
      
      OldLVWndProc(Message);
    }
      

  5.   

    BCB_FANS(四大名捕之追杀令),你这是BCB吧?我看不懂,能不能帮我翻译成Delphi的呢?